Marketplace for advertisement space using gaze-data valuation

ABSTRACT

Methods and systems herein may help to provide an advertisement marketplace for advertisements that are valued according to gaze data from wearable computing devices. An exemplary method involves: receiving a listing request to sell advertisement rights to an advertisement space, wherein the listing request corresponds to a user-account; determining an advertisement value for the advertisement space, wherein the advertisement value is based on occurrences of the advertisement space in gaze data, wherein the gaze data is received from a plurality of wearable computing devices and is indicative of a respective wearer-view associated with each of the devices; in response to the listing request, updating an advertising-space database with a listing for the advertisement space, wherein the listing indicates the advertisement rights are available for purchase at a listing price that is based on the advertisement value; and making the listing for the advertisement space available via a network-based advertisement marketplace.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of co-owned U.S. patent applicationSer. No. 15/145,125, filed May 3, 2016, which is a continuation ofco-owned U.S. patent application Ser. No. 13/292,898, filed Nov. 9,2011, both of which are incorporated by reference herein in theirentirety and for all purposes.

BACKGROUND

Unless otherwise indicated herein, the materials described in thissection are not prior art to the claims in this application and are notadmitted to be prior art by inclusion in this section.

Computing devices such as personal computers, laptop computers, tabletcomputers, cellular phones, and countless types of Internet-capabledevices are increasingly prevalent in numerous aspects of modern life.Over time, the manner in which these devices are providing informationto users is becoming more intelligent, more efficient, more intuitive,and/or less obtrusive.

The trend toward miniaturization of computing hardware, peripherals, aswell as of sensors, detectors, and image and audio processors, amongother technologies, has helped open up a field sometimes referred to as“wearable computing.” In the area of image and visual processing andproduction, in particular, it has become possible to consider wearabledisplays that place a very small image display element close enough to awearer's (or user's) eye(s) such that the displayed image fills ornearly fills the field of view, and appears as a normal sized image,such as might be displayed on a traditional image display device. Therelevant technology may be referred to as “near-eye displays.”

Near-eye displays are fundamental components of wearable displays, alsosometimes called “head-mounted displays” (HMDs). A head-mounted displayplaces a graphic display or displays close to one or both eyes of awearer. To generate the images on a display, a computer processingsystem may be used. Such displays may occupy a wearer's entire field ofview, or only occupy part of wearer's field of view. Further,head-mounted displays may be as small as a pair of glasses or as largeas a helmet.

Emerging and anticipated uses of wearable displays include applicationsin which users interact in real time with an augmented or virtualreality. Such applications can be mission-critical or safety-critical,such as in a public safety or aviation setting. The applications canalso be recreational, such as interactive gaming.

SUMMARY

In one aspect, an exemplary computer-implemented method may involve: (a)receiving a listing request that indicates an offer to selladvertisement rights to an advertisement space, wherein the listingrequest corresponds to a first user-account; (b) determining anadvertisement value for the advertisement space, wherein theadvertisement value is based on detected occurrences of theadvertisement space in gaze data, wherein the gaze data is received froma plurality of wearable computing devices and is indicative of arespective wearer-view associated with each of the wearable computingdevices; (c) in response to the listing request, updating anadvertising-space database with a listing for the advertisement space,wherein the listing indicates the advertisement rights are available forpurchase at a listing price that is based on the determinedadvertisement value; and (d) making the listing for the advertisementspace available via a network-based advertisement marketplace.

In another aspect, an exemplary advertisement-marketplace system mayinclude a non-transitory computer-readable medium and programinstructions stored on the non-transitory computer-readable medium. Theprogram instructions may be executable by at least one processor to: (a)receive a listing request that indicates an offer to sell advertisementrights to an advertisement space, wherein the listing requestcorresponds to a first user-account; (b) determine an advertisementvalue for the advertisement space, wherein the advertisement value isbased on detected occurrences of the advertisement space in gaze data,wherein the gaze data is received from a plurality of wearable computingdevices and is indicative of a respective wearer-view associated witheach of the wearable computing devices; (c) in response to the listingrequest, update an advertising-space database with a listing for theadvertisement space, wherein the listing indicates the advertisementrights are available for purchase at a listing price that is based onthe determined advertisement value; and (d) make the listing for theadvertisement space available via a network-based advertisementmarketplace.

In yet another aspect, an exemplary computer-implemented method mayinvolve: (a) receiving an auction-listing request to offer for saleadvertisement rights to an advertisement space, wherein theauction-listing request corresponds to a first user-account; (b)determining an advertisement value for the advertisement space, whereinthe advertisement value is based on detected occurrences of theadvertisement space in gaze data, wherein the gaze data is received froma plurality of wearable computing devices and is indicative of arespective wearer-view associated with each of the wearable computingdevices; (c) in response to the auction-listing request, adding alisting for the advertisement space to an advertising-space database,wherein the auction listing indicates that the advertisement rights areavailable for purchase via an auction process, wherein the auctionprocess is based at least in part on the determined advertisement value;and (d) making the auction listing for the advertisement space availablevia a network-based advertisement marketplace.

In a further aspect, an exemplary computer-implemented method mayinvolve: (a) receiving a valuation request that identifies anadvertisement space for valuation, wherein the valuation request isassociated with a user-account; (b) determining an advertisement valuefor the advertisement space, wherein the advertisement value is based ondetected occurrences of the advertisement space in gaze data, whereinthe gaze data is received from a plurality of wearable computing devicesand is indicative of a respective wearer-view associated with each ofthe wearable computing devices; (c) based at least in part on thedetermined advertisement value, determining a listing price for theadvertisement space; and (d) in response to the valuation request,sending an indication of the determined listing price.

In yet a further aspect, an exemplary computer-implemented method mayinvolve: (a) searching gaze data from a plurality of wearable computingdevices to detect any occurrence of an advertisement space in the gazedata, wherein the gaze data from each wearable computing device isindicative of a wearer-view associated with the wearable computingdevice; (b) in response to detecting one or more occurrences of a givenadvertisement space in the gaze data, determining that the givenadvertisement space is an unlisted advertisement space; and (c) inresponse to determining that the given advertisement space is unlisted:(i) determining a user-account that is associated with the givenadvertisement space and (ii) determining an advertisement value for thegiven advertisement space, wherein the advertisement value is based onthe one or more detected occurrences of the given advertisement space inthe gaze data; and (d) sending an indication of an ad-space suggestionto the user-account, wherein the indication of the ad-space suggestionindicates a listing price for at least the given advertisement space,wherein the listing price is based on the determined advertisementvalue.

In an additional aspect, an exemplary computer-implemented method mayinvolve: (a) receiving a search request associated with a firstuser-account, wherein the search request indicates to search foradvertisement spaces associated with the first user-account; and (b) inresponse to the search request: (i) searching gaze data from a pluralityof wearable computing devices to detect any occurrence of anyadvertisement space associated with the first user-account, wherein thegaze data from each wearable computing device is indicative of awearer-view associated with the wearable computing device; and (ii) inresponse to detecting at least one occurrence of one or more associatedadvertisement spaces in the gaze data, sending a search result messageto the first user-account, wherein the search result message indicatesthe one or more associated advertisement spaces.

In another aspect, an exemplary computer-implemented method may involve:(a) receiving a purchase-interest indication associated with an firstuser-account, wherein the purchase-interest indication indicates anadvertisement space; (b) determining an advertisement value for theadvertisement space, wherein the advertisement value is based ondetected occurrences of the advertisement space in gaze data, whereinthe gaze data is received from a plurality of wearable computing devicesand is indicative of a respective wearer-view associated with each ofthe wearable computing devices; (c) identifying a second user-accountthat is associated with the advertisement space; and (d) sending anpurchase-interest notification to the second user-account, wherein thepurchase-interest notification indicates a listing price for theadvertisement space that is based on the determined advertisement value.

These as well as other aspects, advantages, and alternatives, willbecome apparent to those of ordinary skill in the art by reading thefollowing detailed description, with reference where appropriate to theaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow chart illustrating a method according to an exemplaryembodiment.

FIG. 2 is a simplified block diagram illustrating a communicationnetwork via which gaze data may be received, according to an exemplaryembodiment.

FIG. 3A is a flow chart illustrating a method for updating a variablerate for advertisement rights, according to an exemplary embodiment.

FIG. 3B is a flow chart illustrating another method for updating avariable rate for advertisement rights, according to an exemplaryembodiment.

FIG. 4 is a flow chart illustrating an auction process for advertisementrights, according to an exemplary embodiment.

FIG. 5 is a flow chart illustrating a method for providing anadvertisement space valuation in an advertisement marketplace, accordingto an exemplary embodiment.

FIG. 6 is flow chart illustrating a method for locating potentialadvertisement spaces, according to an exemplary embodiment.

FIG. 7 is flow chart illustrating a method for providing asearch-request feature, according to an exemplary embodiment.

FIG. 8 is flow chart illustrating a method that providesadvertiser-request functionality, according to an exemplary embodiment.

FIG. 9A is a flow chart illustrating a method for determiningadvertisement value according to an exemplary embodiment.

FIG. 9B is a flow chart illustrating another method for determiningadvertisement value, according to an exemplary embodiment.

FIG. 10 is a flow chart illustrating a method for using multiple factorsto determine the ad-value contribution of a given ad-space occurrence ingaze data, according to an exemplary embodiment.

FIG. 11A illustrates a wearable computing system according to anexemplary embodiment.

FIG. 11B illustrates an alternate view of the wearable computing deviceillustrated in FIG. 11A.

FIG. 12A illustrates another wearable computing system according to anexemplary embodiment.

FIG. 12B illustrates another wearable computing system according to anexemplary embodiment.

FIG. 13 illustrates a schematic drawing of a wearable computing deviceaccording to an exemplary embodiment.

DETAILED DESCRIPTION

Exemplary methods and systems are described herein. It should beunderstood that the word “exemplary” is used herein to mean “serving asan example, instance, or illustration.” Any embodiment or featuredescribed herein as “exemplary” is not necessarily to be construed aspreferred or advantageous over other embodiments or features. Theexemplary embodiments described herein are not meant to be limiting. Itwill be readily understood that certain aspects of the disclosed systemsand methods can be arranged and combined in a wide variety of differentconfigurations, all of which are contemplated herein.

I. Overview

A. Valuing Advertisement Space Based on Gaze Data

Many existing methodologies for valuing physical advertising spaceinvolve use of different types of data to estimate how many people viewan advertisement space (referred to interchangeably as an “ad space”)and/or how effective the advertisement space is at delivering theintended message to the viewer. These methodologies often rely ondemographic information and other such indirect measurements of thepotential audience for an advertisement space. Since these methodologiesonly estimate how many people actually view an advertisement spaceand/or who the people are that actually view the advertisement space,and do not incorporate actual viewership data, the results are ofteninaccurate.

Some existing valuation techniques do incorporate actual viewershipdata, which is typically collected for a test group and thenextrapolated to the population as a whole (or to a larger group, such asa target market). However, gathering such viewership data with existingmethodologies can often be time-consuming and difficult. For example,such techniques often involve polling people in a test groupindividually or laboriously observing how many people actually view anadvertisement space (e.g., counting vehicles that pass by a billboard).Because of the effort required, advertising is typically limited tocertain defined types of spaces (e.g., billboards, televisioncommercials, websites, etc.) for which representative viewership datacan be most-readily obtained.

Since most any physical space that is seen by people has some value forpurposes of advertising, current valuation techniques do not allow forcapitalization of many would-be advertising spaces. While the individualvalues of such spaces may be small, the cumulative value of all suchspaces may be significant. However, due to the limitations of currentadvertisement valuation and marketing techniques, much of the potentialvalue of such spaces has not been monetized.

Accordingly, exemplary methods and systems may help to determine thevalue of advertising spaces in a manner that may be more accurate, andmay require less data-collection effort than existingadvertisement-valuation techniques. In particular, exemplary methods mayutilize “gaze data,” from a number of wearable computers, which isindicative of what the wearers of the wearable computers are actuallyviewing, in order to value physical spaces.

For example, point-of-view (POV) videos from a number of wearablecomputers may be analyzed in order to determine how frequently a certainspace is captured in the POV videos. Notably, POV video from wearablecomputers may provide a fairly accurate indication of what a user isactually looking at. Therefore, aggregating such POV videos from anumber of users may help to more accurately value advertising rights tophysical spaces. Additionally, the wearers of the wearable computingdevices may elect to make their respective user-profiles available, suchthat individual characteristics of each wearer who views anadvertisement space may be considered. This information may then be usedto determine the value of the physical space.

Furthermore, a cloud-based server system may aggregate gaze data frommany wearable computers, and use the gaze data to determine wearer-viewdata for various advertisement spaces. As such, an exemplary embodimentmay provide advertisement valuation that is carried out automatically,without the effort required for manual data collection, and is moreaccurate, as the valuation is based on data that more-accuratelycaptures what people are actually viewing.

Advantageously, exemplary methods and systems may automatically collectwearer-view data for a large number of advertisement spaces. This mayallow for valuation and monetization of many physical spaces that havevalue for purposes of advertising, and might not otherwise becapitalized.

For example, the shortcomings of existing advertisement valuation areespecially problematic when it comes to individuals who wish toassociate themselves with a brand or product (e.g., individuals who wishto be sponsored). Because of the cost and/or effort involved in usingcommon valuation techniques to gather viewership data for the averageperson, sponsorship is generally limited to high-visibility individuals(e.g., famous athletes and musicians). Such high-visibility individualsare typically the most valuable to an advertiser, such that the cost ofevaluating the sponsorship is justified by the value to the advertiser.For instance, a famous race-car driver can readily sell advertisingspace on his or her clothing or on their car. However, there is nomarket for the average person to do the same (in fact, individuals oftenpay more to have a brand logo on their clothing). Typically, however,there is still value to the average person promoting a product in thismanner. Advantageously, by economically and accurately determining theadvertisement value of physical spaces associated with the averageperson, an exemplary embodiment may help open up sponsorshipopportunities for almost anyone.

However, it should be understood that exemplary embodiments maygenerally be used to value almost any type of physical space. To providejust a few examples, advertisement values may be determined for: (a) theback of the screen of a laptop computer, (b) an article of clothing, (c)a billboard, (d) a surface on an automobile, (e) a body surface, (f) aspace on a webpage, (g) a print advertisement space, (h) a surface onproduct packaging, and/or (i) a pet. Many other types of advertisementspaces may also be valued utilizing an exemplary embodiment.

Further, an exemplary methods and systems may be used to value physicalspaces types for various different advertisement formats such as: (a)print advertisements, (b) computer-generated images, (c) video, (d) peeland stick paper advertisements, (e) two-dimensional projections, (f) athree-dimensional projections, (g) iron-on images, (h) temporarytattoos, and/or (i) other advertising formats.

B. Advertisement Marketplace

Provided with the ability to determine an advertising value for almostany physical space, there is a need for a marketplace system tofacilitate transactions involving use of such physical spaces asadvertisement spaces. Accordingly, exemplary methods and systems mayhelp to provide an advertisement marketplace.

In an exemplary marketplace, gaze-data-based valuation may be used toprice advertising rights. For instance, in some applications,advertisement rights to an advertisement space may be listed at theadvertisement value, or at a fixed rate that is based on theadvertisement value. In other instances, advertisement rights may belisted at a variable rate. For example, an initial rate may be based onthe advertisement value at or near the time of purchase. The system maythen adjust this rate based on views of the advertisement during theadvertising period (e.g., based on how often the advertisement space isdetected in subsequent gaze data). Other gaze-data-based pricingstructures for advertisement spaces are also possible.

Note that in an exemplary embodiment, the advertisement value upon whichthe listing price is based may be a “relative advertisement value.” Morespecifically, the relative advertisement value may be determinedpre-sale, and thus may differ from the price that the advertisementspace ultimately sells for in an open market. For example, a relativeadvertisement value may be determined for an advertisement space beforeany advertisement is placed, based on gaze data in which the bareadvertisement space is detected. As such, the selling price mayultimately differ based on what the market is willing to pay for theadvertisement space. Thus, in some embodiments the true or officialadvertisement value may be considered to be the market price, and thusmay differ from the relative advertisement value.

In some embodiments, an exemplary marketplace may include variousfeatures to assist a user who wishes to list an advertisement space forsale in the marketplace. For instance, an exemplary system may supportvaluation requests, which allows a user to request and be provided withgaze-data-based advertisement values for the user's advertisementspaces. Such valuation requests may help users evaluate whether or notto list an advertisement space in the marketplace. More specifically,once provided with the advertisement value for their advertisementspace, a user may then elect to list the advertisement space at alisting price that is based on this advertisement value.

Further, an exemplary system may allow a user to sell advertising rightsfor a wide variety of physical spaces. For instance, an exemplary systemmay have pre-defined types of physical spaces that can be valued as anadvertisement space and listed for sale (e.g., higher-visibility typesof physical spaces such as a billboard, the back of a laptop computer,the front of a shirt, etc.). As such, an exemplary system mayautomatically search gaze data for the pre-defined types of physicalspaces, and in so doing may identify potential advertisement spaces.Once a physical space has been identified as a potential advertisementspace, the system may allow a user to sell advertisement rights to theadvertisement space via the advertisement marketplace.

An exemplary advertisement marketplace may additionally or alternativelyallow a user to dynamically define a physical space as an advertisementspace, even if it is not pre-defined as such. For instance, the systemmay provide features via which a user can submit images, video, and/orother information that allows the system to detect when an advertisementspace occurs in gaze data. After receiving such information, the systemcan search for the user-defined advertisement space in gaze data, sothat the advertisement space can be valued and/or listed in theadvertisement marketplace.

In some embodiments, an exemplary system may provide a user who wishesto list advertisement spaces with suggestions of advertisement spacesthat can be listed by the user. In particular, the marketplace systemmay search gaze data (and possibly other data sources as well) forphysical spaces that are associated with the given user and that areusable as advertisement spaces. The system may do so automatically or onrequest by a given user. In either case, the user may then be providedwith suggestions of unlisted advertisement spaces (possibly includingvaluations of each advertisement space), which the user can list in theadvertisement marketplace. This may be particularly useful in thescenario where a user is unaware that a certain physical space is usableas an advertisement space. In this scenario, the suggestions may informa user of the existence of advertisement spaces that the user waspreviously unaware of. Of course, ad-space suggestions may be useful inother scenarios as well.

An exemplary system may also include various features to assist anadvertiser who wishes to purchase an advertisement space. For instance,a marketplace system may allow an advertiser to search, browse, and/orpurchase advertisement spaces that are listed in the marketplace.

Furthermore, an exemplary system may allow an advertiser to identify ordefine an advertisement space for which they are interested inpurchasing advertisement rights. In this regard, the advertiser may beprovided with similar features as those provided to a user wishing tolist an advertisement space, which allow the advertiser to dynamicallydefine a physical space as an advertisement space, and/or to identify apre-defined type of advertisement space. Once an advertisement space hasbeen identified, the marketplace system may identify a user that isauthorized to list the advertisement space, and notify the user thatthere is interest in their advertisement space.

In a further aspect, an exemplary marketplace may include features tofacilitate a transaction to purchase advertisement rights between theuser who listed the advertisement space and the advertiser who ispurchasing the advertisement space. The advertisement marketplace mayalso facilitate completion of the contract created between the sellerand the purchaser after such a transaction. In particular, when anadvertiser purchases an advertisement space, an exemplary marketplacesystem may create and maintain a record of a contract between theadvertiser and user who sold the advertisement. The system may alsoprovide features to facilitate performance of the contract. Forinstance, a server may search gaze data received post-contract todetermine that the advertisement specified by the advertiser is beingdisplayed in the advertisement space in accordance with the contract.Further, the system may facilitate billing the advertiser, and possiblyeven transferring funds between user-accounts for the advertiser and theseller.

Note that herein, when gaze data is said to be associated with a givenuser-account, it should generally be understood that this gaze data wassent by a device that is associated with the given user-account (e.g., adevice that is registered with the user-account). Further, gaze dataand/or other information that is associated with a user-account may alsobe said to be associated with a user since, functionally, associatinggaze data or any other data with a user will generally be accomplishedby associating the data with the user's user account.

In a further aspect, when a user creates a user-account for which a gazevalue may be determined, a user-profile for the user-account may becreated as well. The user-profile may include or provide access tovarious types of information, from various sources, which is related tothe user. For simplicity, examples set forth herein may simply refer toa user-account as including the information included in the associateduser-profile. However, this should not be read as requiring that auser-account include a user-profile. It is possible, in someembodiments, that a user-account may not have an associateduser-profile. Furthermore, herein, the term user-profile may moregenerally be understood to refer to any information or collection ofinformation related to a given user. As such, a user-profile may bespecifically created for a user-account or may simply take the form ofdata that is associated with a given user.

II. Exemplary Methods

FIG. 1 is a flow chart illustrating a method according to an exemplaryembodiment. The method 100 shown in FIG. 1 is described by way ofexample as being carried out by a server system in order to provideadvertisement-marketplace functionality. However, it should beunderstood that exemplary methods, such as method 100, may be carriedout by other systems or combinations of systems, without departing fromthe scope of the invention.

Method 100 involves the server system receiving a listing request thatindicates an offer to sell advertisement rights to an advertisementspace, where the listing request corresponds to a first user-account, asshown by block 102. The server system also determines an advertisementvalue for the advertisement space, as shown by block 104. Further, inresponse to the listing request, the server system updates anadvertising-space database with a listing for the advertisement space,where the listing is at a listing price that is based on the determinedadvertisement value, as shown by block 106. The server system may alsomake the listing for the advertisement space available via anetwork-based advertisement marketplace, as shown by block 108.

In an exemplary embodiment, the advertisement value that is determinedat block 104 is based on detected occurrences of the advertisement spacein gaze data that is received from a plurality of wearable computingdevices. Further, the gaze data from each wearable computing device isindicative of the respective wearer-view associated with the wearablecomputing device. For example, the gaze data from each wearablecomputing device may take the form of point-of-view video that iscaptured at the wearable computing device. As such, the gaze data uponwhich an advertisement value is based may include a number ofpoint-of-view videos (e.g., a respective point-of-view video from eachof the wearable computing devices).

Gaze data may additionally or alternatively take forms other thanpoint-of-view video. For example, the gaze data from a given wearablecomputing device may take the form of point-of-view images captured by aforward- or outward-facing camera on the wearable computing device. As aspecific example, a given wearable computing device may periodicallytake a picture, and then send the picture to the server system for usein generating wearer view data. To do so, the wearable computing devicemay analyze point-of-view video for one or more advertisement spaces,and generate a screen capture of the video when and advertisement spacedetected. The wearable computing device may then send the screen captureto the server system. Other examples are also possible.

Since the gaze data from a given wearable computing device is generallyindicative of the wearer-view of the wearable computing device's wearer,the gaze data is generally indicative of what the wearer of the deviceis actually looking at. Further, since the wearer-view data is based onthe gaze data, the wearer-view data is indicative of actual views of theadvertisement space by wearers. For instance, the wearer-view data mayprovide an indication of how many people are looking at a particularadvertisement space, which people are actually looking at a particularadvertisement space, when people are looking at a particularadvertisement space, and/or how long people are actually looking at aparticular advertisement space, among other information. As such, thewearer-view data may help to more accurately determine what anadvertising space is worth.

Since the gaze data from a given wearable computing device is generallyindicative of the wearer-view of the wearable computing device's wearer,the gaze data is generally indicative of what the wearer of the deviceis actually looking at. Further, since the wearer-view data is based onthe gaze data, the wearer-view data is indicative of actual views of theadvertisement space by wearers. For instance, the wearer-view data mayprovide an indication of how many people are looking at a particularadvertisement space, which people are actually looking at a particularadvertisement space, when people are looking at a particularadvertisement space, and/or how long people are actually looking at aparticular advertisement space, among other information. As such, thewearer-view data may help to more accurately determine what anadvertising space is worth. Methods and systems for determining anadvertisement value using gaze data will be described in greater detailwith reference to FIGS. 9A, 9B, and 10.

In some cases, the advertisement value for the advertisement space mayhave already been calculated when the listing request is received atblock 102, using methods such as those described in reference to FIGS.9A, 9B, and 10. In this case, block 104 may simply involve querying anad-value database to retrieve the predetermined advertisement value.

In other cases, the advertisement value may not yet have been calculatedwhen the listing request is received at block 102. In such cases, block104 may involve the server system responsively analyzing gaze data inorder to determine the advertisement value, using methods such as thosedescribed in reference to FIGS. 9A, 9B, and 10. Note that in some ofthese cases, analyzing the gaze data may take a considerable amount oftime (e.g., more time than a typical user will want to wait, andpossibly days, weeks, or even longer). As such, the server system mayindicate that time is needed to determine the advertisement value sothat the user can choose whether or not to wait for the advertisementvalue to be determined. If the user elects not to wait, then the serversystem may notify the user once the advertisement value is determined(e.g., via an indication sent to the user's user-account).

Further, in some cases, even when the advertisement value has beencalculated before receipt of the listing request at block 102, theserver system may still analyze gaze data at block 104 in order toupdate the predetermined advertisement value. This may be useful in theevent it has a significant amount of time since the advertisement valuewas determined (e.g., long enough that the advertisement value is likelyto have changed based on gaze data received in the interim). This may bethe default procedure, or may be triggered when a certain amount of timehas passed since the advertisement value was determined (e.g., longenough that the advertisement value is likely to have changed based ongaze data received in the interim). In the latter case, the amount oftime that triggers an update to the advertisement value may be setdepending upon the goals of the particular implementation.

Exemplary systems will now be described before further details ofexemplary methods are set forth.

III. Exemplary Server Systems

FIG. 2 is a simplified block diagram illustrating a communicationnetwork via which gaze data may be received, according to an exemplaryembodiment. As such, an exemplary advertisement marketplace may beimplemented in a network such as communication network 200. As shown,communication network 200 includes a number of wearable computingdevices 202A to 202D, which are configured to communicate with a serversystem 204 via one or more networks 206. An exemplary network, such ascommunication network 200, may also include computing devices other thanwearable computing devices, such as laptop computer 203 and mobile phone205, for instance.

In order to facilitate an exemplary method, the users of wearablecomputing devices 202A to 202D may register their respective devices andopt in to programs via which the users submit gaze data from theirrespective devices. As such, wearable computing devices 202A to 202D maysend gaze data to the server system 204, which the server system 204 maythen analyze to help determine advertisement values for advertisementspaces, possibly to valuate advertisement spaces as well. Further, insome embodiments, laptop 203, mobile phone 205, and/or other computingdevices may provide supplemental gaze data, which may be used by serversystem 204 to supplement the gaze data from wearable computing devices202A to 202D.

The server system 204 may be a computing system including one or morecomputing devices. In particular, server system 204 may be a cloud-basedserver system that is configured to receive gaze data, to determineadvertisement values for advertisement spaces detected in the gaze data,and/or to provide an advertisement-space marketplace for advertisingspaces.

As noted, the gaze data in an exemplary embodiment may includepoint-of-view videos captured by a number of wearable computing devices.For example, some or all of the wearable computing devices 202A to 202Dmay include or take the form of glasses-style HMDs that each include aforward-facing video camera for taking point-of-view video (e.g., videothat generally captures the perspective of a person wearing the HMD). Assuch, when the HMD is worn, the forward-facing camera will capture videoand/or images that are generally indicative of what the wearer of theHMD sees. Note that exemplary glasses-style HMDs will be described ingreater detail with reference to FIGS. 11A, 11B, 12A, 12B, and 13.

Further, server system 204 may include or be in communication with anad-valuation server 212 and an ad-marketplace server 214. In someembodiments, ad-valuation server 212 and ad-marketplace server 214 maybe separate server systems, which each include one or more computingdevices. In other embodiments, some or all of the functionalityattributed to ad-valuation server 212 and ad-marketplace server 214 maybe provided by a single server system, which may include one or morecomputing devices.

In an exemplary embodiment, ad-valuation server 212 may be configured toreceive gaze data from wearable computing devices 202A to 202D. Further,ad-valuation server 212 may analyze the received gaze data foroccurrences of one or more advertisement spaces, and generatewearer-view data for the advertisement spaces based on occurrences ofthe advertisement spaces in the gaze data.

In a further aspect, the server system 204 may include or have access toa wearer-view database 208 that includes wearer-view data for a numberof advertisement spaces (e.g., advertisement spaces indicated byad-space database 210). When ad-valuation server 212 generateswearer-view data, ad-valuation server 212 may store the generated datain wearer-view database 208. Accordingly, server system 204 may accessthe wearer-view database 208 to retrieve wearer-view data for a givenadvertisement space, which in turn may be used to determine theadvertisement value for the given advertisement space.

To assist the server in detecting occurrences of various advertisementspaces in gaze data, advertisement server 204 may include or have accessto an ad-space database 210 that includes information that can be usedto identify various advertisement spaces. Accordingly, advertisementserver system 204 may use the identifying information from advertisementspace database 210 to determine when advertisement spaces occur in gazedata from wearable computing devices 202A to 202D. Further, inembodiments that utilize location data for advertisement spaces,ad-space database 210 may also store location information for individualadvertisement spaces.

In another aspect, computing devices such as wearable computing devices202A to 202D, laptop computer 203, and/or mobile phone 205, may beprovided with advertisement marketplace functions via the server system204, and in particular, via ad-marketplace server 214.

As such, ad-marketplace server 214 may be configured to provide anadvertisement marketplace via which advertisement spaces that are valuedby ad-valuation server 212 can be bought and sold. Further,ad-marketplace server 214 may facilitate transactions between parties insuch an advertisement marketplace. For instance, ad-marketplace server214 and/or other components of server system 204 may support anadvertisement marketplace including features for listing advertisementrights to an advertisement space for sale, a bidding system for physicalspaces (e.g., auction functionality), organization and indexing ofavailable physical spaces, searching and/or browsing listings foradvertisement spaces, tracking usage of advertisement spaces,calculation of fees and other billing functions, and/or portfoliomanagement for sellers and purchasers of advertisement space, amongother features.

Further, server system 204 may provide access to an advertisementmarketplace via a website, via a standalone application, and/or viaother points of access. Data related to listings and/or transactions inthe advertisement marketplace may then be stored in ad-space database210.

IV. Exemplary Terms and Conditions of Sale in an AdvertisementMarketplace

In an exemplary method, such as method 100, a listing request may takevarious forms and/or include various different types of information,depending upon the embodiment. For example, a listing request mayinclude data that: (a) identifies and/or defines the advertisement spaceto be listed, (b) identifies the user-account to be associated with thelisting, (c) data demonstrating that the user-account is authorized tolist the advertisement space, (d) data defining the terms and conditionsunder which the advertisement rights are being offered, and/or (e) othertypes of data related to the requested listing and/or the user account.

In a further aspect, an exemplary system may allow for certainconditions to be placed on a listing. Accordingly, an exemplary methodmay further involve receiving, in conjunction with the listing request,one or more condition indications which each indicate a condition of theadvertisement rights offered in the listing for the advertisement space.Such condition indications may be included in the listing request, orreceived separately from the listing request. Examples of conditionsthat may be specified may include: (a) a time period for which theadvertisement rights will be provided, (b) a portion of theadvertisement space to be provided, (c) one or more timeshareconditions, and (d) an advertisement-type restriction for theadvertisement space. Others types of conditions are also possible.

Furthermore, an exemplary system may allow a listing to be created for acertain type of contract or agreement. Functionally, the contract mayspecify a set of conditions that define the advertisement rights thatwill be provided when an advertiser purchases the advertisement rights.For example, a listing may specify a contract for:

-   -   (a) A sale transferring ownership of the advertisement space        from the first user-account to the second user-account.    -   (b) An exclusive lease of the advertisement space (e.g., an        agreement conveying all advertisement rights for the term of the        lease, such as a day, month, year, and so on).    -   (c) A partial exclusive lease of the advertisement space (e.g.,        an agreement conveying all advertisement rights for a portion or        portions of the term of the lease, such as between 4:00 pm and        6:00 pm every day during a month-long lease).    -   (d) A timeshare lease of the advertisement space (e.g., an        agreement to conveying the right to have an advertisement        displayed in a rotation with other advertisements, without any        specific time period being set aside for a given one of the        advertisements in the rotation).

Other types of contracts or agreements are also possible. Further, insome embodiments, an advertisement marketplace may provide pre-definedcontracts, which can be selected by a user for a listing. Additionallyor alternatively, an advertisement marketplace may allow a user tocreate a custom contract by specifying the terms and conditions desiredby the user. Further, in some embodiments, an advertisement marketplacemay allow a user to create a custom contract by modifying a pre-definedcontract. In a further aspect, an exemplary system may be configured tofacilitate a transaction for the advertisement rights to anadvertisement space that was listed using a method such as method 100.For example, an exemplary system may be configured to receive a purchaserequest from a second user-account, which indicates a desire to purchasea listing from a first user-account. In response to such a request, anexemplary system may facilitate a transaction for the advertisementrights to the advertisement space by, e.g., creating a contract for theadvertisement rights as specified in listing, between the firstuser-account and the second user-account.

V. Exemplary Pricing in an Advertisement Marketplace

In an exemplary advertisement marketplace, various types of pricing maybe implemented. In some embodiments, all advertisement spaces may belisted with the same pricing structure. In other embodiments, differentadvertisement spaces may be listed with different pricing structures.Further, in some embodiments, a single listing for an advertisementspace may offer multiple types of pricing structures, so that apurchaser of the advertisement space can select the pricing structurethat fits their needs.

Examples of possible pricing structures include: (a) various types offixed-rate pricing, (b) various types of variable-rate pricing, and/or(c) various types of auction-based pricing. It should be understood thatother pricing structures may additionally or alternatively beincorporated, without departing from the scope of the invention.

In a further aspect, in order to help provide more accurate pricing foradvertisement spaces, an exemplary system may extrapolate from theoccurrences of an ad-space that are detected in gaze data to estimatehow many views occurred in the viewing population as a whole. Theadvertisement value and/or the price based on the advertisement valuemay therefore take into account the estimated number of views by theviewing population. This may be useful as there may be many cases wherethose that view an advertisement space are not wearing a wearablecomputer that is configured to provide gaze data, and/or where awearable computer does not capture an advertisement that is viewed byits wearer. As one specific example, consider the case where it isassumed that one out of every thousand views will be captured in gazedata. In this case, if the value of ten occurrences that are detected ingaze data during a one-month period is determined to be $100, the serversystem may estimate are 10,000 views that are worth $10 each. As such,the advertisement value based on all views may be determined to be$100,000 per month. Other examples are also possible.

Note that in some instances, the extrapolation from the occurrences ingaze data may assume that the users who provide gaze data are generallyrepresentative of the viewing population as a whole. However, it is alsopossible that the users who provide gaze data (e.g., those who ownwearable computers and opt in to a program to share gaze data) may notbe representative of the viewing population as a whole. In this case, anexemplary system may be configured to account for such differences whenextrapolating from the gaze data. The particular techniques used todetermine a total number of ad-space views based on the occurrencesdetected in gaze data may vary from application to application,depending on the characteristics of the viewing population, thedemographics of those who provide gaze data, and/or other factors.

In a further aspect, demographic biases created by differences betweenwearable-computing-device wearers and the population as a whole (or acertain subset of the population) may also be accounted for whencalculating individual ad-value contributions upon which theadvertisement value is ultimately based. For example, consider a town oranother geographic region where an “over-55” age group is known to makeup 60% of the viewing population as a whole, but only makes up 12% ofthe wearable-computing-device users in that area (as indicated byregistered wearers of the given age group and/or observed occurrences ofan ad space in gaze data from wearers in the age group). Accordingly,when determining the value for an advertisement space in this town, thedata from the 12% of wearers who are in the over-55 age group may begiven a 60% weight, while the data from the other 88% of wearers fromwhich gaze data is received may be given a 40% weight. Many otherexamples are also possible.

In yet another aspect, users who are selling advertisement rights totheir ad spaces may be provided options to control and/or affect whattypes of advertisements are displayed in their ad space and/or the termsunder which certain advertisers can advertise in their advertisementspace. For example, a certain user might not want a certain type ofadvertisement in their advertisement space for moral or ethical reasons,or for any other reason, and might specify that there advertisementspace cannot be used for this type of advertisement, or might indicatethat the listing price and amount charge should be higher for this typeof advertisement. For example, a user who does not like the idea of anadvertisement for an alcoholic beverage in their advertisement space,may specify that such an advertisement should cost three times thestandard rate (e.g., the relative advertisement value) for their adspace. As another example, a user who is a fan of a particularelectronics company may want an advertisement from the company in theirad space, and therefore may specify that this company should be chargedhalf of the standard rate for their advertisement space. Many otherexamples are also possible.

A. Fixed-Rate Pricing

As noted, fixed-rate pricing may be used for advertisement spaces in anexemplary advertisement marketplace. For example, in some instances, theserver system may simply set the listing price for advertisement rightsat the gaze-data based advertisement value. According, when a methodsuch as that described in reference to FIGS. 9A, 9B, and 10 is used todetermine the advertisement value for an advertisement space, performingthe method may effectively determine the listing price at which theadvertisement space can be listed.

In some cases, the price at which an advertisement space can be listedmay differ from the determined advertisement value. However, the listingprice may still be set to a fixed value or fixed rate that is based onthe advertisement value for the advertisement space. In particular, therate for a fixed-price listing may be adjusted according to the termsand conditions specified by the listing. For example, if anadvertisement value is determined in terms of dollars per month, and alisting request specifies that the advertisement space can be purchasedon a day-to-day basis, the system may calculate a daily rate that isbased at least on part on the monthly advertisement value.

As another example, an advertisement value may be determined with theassumption of exclusive use for a certain term. In this case, if thelisting specifies that the advertisement space can be purchased on atimeshare basis (e.g., placing an advertisement in a rotation with otheradvertisements), the rate at which the timeshare rights to theadvertisement space can be listed may be derived from the advertisementvalue for exclusive use. For example, the advertisement value may bedivided by the number of shares to determine the rate for one share ofthe timeshare. For instance, consider an advertisement space for whichexclusive use is valued at $30.00 per month. If the owner wishes tooffer this advertisement space as a timeshare to be split between tenadvertisers, each share may be listed at $3.00 per month. Othertechniques for determining a timeshare price based on an advertisementvalue that assumes exclusive use are also possible.

More generally, many different techniques may be implemented to accountfor variations from the advertisement value due to terms and conditionsof a listing. Furthermore, the manner in which the advertisement valueis used to determine the price for a listing may vary based on otherfactors and/or for other reasons, without departing from the scope ofthe invention.

B. Variable-Rate Pricing

As noted, variable-rate pricing may be used for advertisement spaces inan exemplary advertisement marketplace. In particular, the listing pricemay be a variable rate that is based on the advertisement value for theadvertisement space.

For example, at an initial time of the listing, the variable rate may beset equal to or based on the advertisement value. The server system maysubsequently update the variable rate based at least in part on gazedata that is received after the initial time of the listing.

FIG. 3A is a flow chart illustrating a method for updating a variablerate for advertisement rights, according to an exemplary embodiment. Themethod 300 shown in FIG. 3A is described by way of example as beingcarried out by a server system to provide the described functionality.However, it should be understood that method 300 may be carried out byother systems or combinations of systems, without departing from thescope of the invention.

Method 300 may be carried out by a server system after the initial timewhen a listing for advertisement rights to an advertisement space wasmade available. More specifically, at some point after the initiallisting, the server system may receive additional gaze data from aplurality of wearable computing devices, as shown by block 302. Theserver system may analyze the additional gaze data to detect occurrencesof the advertisement space in the additional gaze data, as shown byblock 304. The server may then update the variable rate based at leastin part on occurrences of the advertisement space in the additional gazedata, as shown by block 306.

The server may use various techniques to update the variable rate atblock 306. In some embodiments, the server may use the occurrences ofthe advertisement space in the additional gaze data to update theadvertisement value for the advertisement space. The server can in turnuse the updated advertisement value as a basis for updating the variablerate. For instance, taking into account the additional gaze data, theserver may implement a method such as that described in FIGS. 9A, 9B,and 10 to update the advertisement value for the advertisement space.

FIG. 3B is a flow chart illustrating another method for updating avariable rate for advertisement rights, according to an exemplaryembodiment. The method 350 shown in FIG. 3B is described by way ofexample as being carried out by a server system to provide the describedfunctionality. However, it should be understood that method 350 may becarried out by other systems or combinations of systems, withoutdeparting from the scope of the invention.

Method 350 may be implemented in a scenario where the advertisementvalue upon which the listing price is initially based, is based onwearer-view data. Further, the wearer-view data upon which theadvertisement value is based, is in turn based on the detectedoccurrences of the of the advertisement space in gaze data. In addition,like method 300 of FIG. 3A, method 350 of FIG. 3B may be carried out bya server system after a listing for advertisement rights to anadvertisement space is made available.

More specifically, after a listing has been made available in theadvertisement marketplace, the server system may receive additional gazedata, as shown by block 302. The server may then analyze the additionalgaze data to detect additional occurrences of the advertisement space inthe gaze data, as shown by block 304. As such, the server may update thewearer-view data for the advertisement space based on the additionaloccurrences that are detected in the additional gaze data, as shown byblock 306. The server may then use the updated wearer-view data as abasis for updating the variable rate, as shown by block 308.

In an exemplary embodiment, at block 308, the server may use the updatedwearer-view data to update the advertisement value, and in turn use theupdated advertisement value to update the variable rate. For instance,taking into account the additional gaze data, the server may implement amethod such as that described in FIGS. 9A, 9B, and 10 to update thewearer-view data and in turn the advertisement value for theadvertisement space.

In a further aspect of an exemplary method, such as method 300 or 350,the updated advertisement value may be based solely on the additionalgaze data, or may take into account some or all of previously-receivedgaze data as well as the additional gaze data. As such, updating theadvertisement value may involve re-determining the advertisement valueusing only data received between the current and previous instance inwhich the advertisement value was determined. By using this approach,the server is effectively “starting from scratch” each time it updatesthe advertisement value, as none of the gaze data that was previouslyused to determine the advertisement value, will be used to whenre-determining the advertisement value. Alternatively, the server maycombine the additional gaze data with some or all of the previouslyreceived data, and use this combination of gaze data to update theadvertisement value.

In some implementations, an advertiser may be charged for anadvertisement space on a per-occurrence basis. In such an embodiment,the server may search gaze data to detect any occurrences of anadvertisement space, and determine an ad-value contribution of eachdetected occurrence. The server may then use the ad-value contributionsfor detected occurrences of the advertisement space to determine theamount to be charged for the user-account.

For example, consider an implementation where an advertiser pays foradvertisement rights on a per-occurrence basis, and is billed on apredefined billing period or cycle (e.g., weekly or monthly). In thisscenario, the server may determine the amount owed for a given billingperiod by summing the ad-value contributions of the ad-space occurrencesthat are detected during the billing period. Other billing techniquesmay also be used to charge advertisers on a per-occurrence basis.

When an advertiser is billed for advertisement rights on aper-occurrence basis, the advertiser may be charged a fixed amount foreach occurrence, or may be charged an amount that can vary fromoccurrence to occurrence.

More specifically, in some cases, it may be assumed that all views of anadvertisement are of equal value (or that views of differing values mayrevert to a fixed average or median value over time). In this and othercases, the same amount may be charged per occurrence.

However, an exemplary method may also account for the fact that someviews of an advertisement may be more valuable to an advertiser thanother views. For example, the amount due according of a given occurrencemay vary depending on factors such as the duration of occurrence, howfocused the viewer was on the advertisement space (e.g., as indicated bya focus value), and/or characteristics of the particular user who viewedthe ad, among others. Accordingly, an exemplary method may involvedetermining ad-value contributions for individual occurrences of anadvertisement space, and determining an amount to be paid in a billingcycle based on the individual ad-value contributions during the billingcycle. Methods for determining ad-value contributions of individualoccurrences of an advertisement space are described in greater detailwith reference to FIGS. 9B and 10.

C. Auctions

As noted, pricing for an advertisement space may also be set using anauction process. For example, FIG. 4 is a flow chart illustrating anauction process for advertisement rights, according to an exemplaryembodiment.

More specifically, method 400 may involve the server system receiving anauction-listing request to offer advertisement rights to anadvertisement space via an auction, where the auction-listing requestcorresponds to a first user-account, as shown by block 402. The servermay also determine an advertisement value for the advertisement space,where the advertisement value is based on detected occurrences of theadvertisement space in gaze data, as shown by block 404. Further, inresponse to the auction-listing request, the server system may add anauction listing for the advertisement space to an advertising-spacedatabase, where the auction listing indicates that the advertisementrights are available for purchase via an auction process that is basedat least in part on the determined advertisement value, as shown byblock 406. The server may then make the auction listing available via anetwork-based advertisement marketplace, as shown by block 408.

The auction process may be based on the determined advertisement valuein various ways. For example, a minimum bid may be set to a certainpercentage of the advertisement value. For instance, the auction processmay require the first bid to be at least 60% of the advertisement value.Similarly, a reserve price for the auction may also be set to apercentage of the advertisement value. For instance, in the aboveexample where the minimum bid is 60% of the advertisement value, thereserve may be set at 80% percent of the advertisement value. Therefore,while bidding may start at 60% of the advertisement value, the seller isnot obligated to sell until bidding reaches at least 80% of theadvertisement value. Many other examples are also possible.

VI. Valuation Requests

As noted an exemplary advertisement marketplace may supportvaluation-request functionality, via which a user can request theadvertisement value and/or the potential listing price for anadvertisement space. For example, FIG. 5 is a flow chart illustrating amethod for providing an advertisement space valuation in anadvertisement marketplace, according to an exemplary embodiment.

More specifically, method 500 involves the server system receiving avaluation request that indicates an advertisement space for valuation,where the request is associated with a certain user-account (e.g.,received from a computing device that is associated with theuser-account), as shown by block 502. The system then determines theadvertisement value for the advertisement space, which is based ondetected occurrences of the advertisement space in gaze data, as shownby block 504. Then, based at least in part on the determinedadvertisement value, the system may determine a listing price for theadvertisement space, as shown by block 506. The system can then respondto the valuation request by sending an indication of the determinedlisting price, as shown by block 508.

The valuation request may indicate the advertisement space by way ofdata that may itself be used to search the gaze data for theadvertisement space and/or by way of data from which search criteria maybe derived. The server may accordingly use the data that identifies theadvertisement space to search for occurrences of the advertisement spacein subsequently-received gaze data and/or in past gaze data that hasbeen stored. In particular, the server may use a method such as thatdescribed in FIGS. 9A, 9B, and 10 to determine the advertisement valuebased on such gaze data. The server may then send an indication of theadvertisement value to the user that requested the valuation.Additionally or alternatively, the server may send an indication of apotential listing price if the user were to list the advertisement space

In some cases, when a valuation request is received at block 502, thesystem may already have the data needed to determine the advertisementvalue, or in some instances, may even have the advertisement valueavailable. In particular, the system may have already have generatedwearer-view data based on previously-detected occurrences of theidentified advertisement space in gaze data, and further, may havedetermined an advertisement value based on this wearer-view data. Thismay occur in a number of scenarios. For example, a user may have made ageneral request to search gaze data for advertisement spaces that can belisted via their user account, provided general authorization to searchfor such advertisement spaces, or previously requested that the systemcreate wearer-view data specifically for the identified advertisementspace. Other examples are also possible.

Therefore, in order to determine the advertisement value for theindicated advertisement space at block 504, the system may first querythe advertisement-space database to determine if an entry for theadvertisement space exists and if so, whether the entry indicatesexisting wearer-view data and/or an advertisement value. If anadvertisement value is indicated, the system may simply retrieve theadvertisement value. If wearer-view data exists, but no advertisementvalue is indicated or the advertisement value is determined to beout-of-date (e.g., not based on the latest available wearer-view data),then the system may use the existing wearer-view data to determine theadvertisement value.

On the other hand, if no ad-value is available and no wearer-view dataexists (or if existing wearer-view data is determined to beout-of-date), then the system may need to search gaze data for theadvertisement space in order to generate the wearer-view data upon whichthe advertisement value can be based. To do so, the server may searchstored gaze data for occurrences of the advertisement space and/or maysearch future gaze data for occurrences of the advertisement space. Morespecifically, in an exemplary embodiment, the server may carry out amethod such as those described in FIGS. 9A, 9B, and 10 in order todetermine to the advertisement value for the indicated advertisementspace.

In a further aspect, note that if a listing request is received foradvertisement space that is not yet include in the ad-space database,such as in method 100 of FIG. 1, then the system may automatically treatthis listing as a valuation request and/or prompt the user as to whetherthey would like valuation to be performed. Once the advertisement valuehas been determined, the system may then allow the user to proceed withlisting the advertisement space.

VII. Identifying Potential Advertisement Spaces

A. Automated Suggestion of Potential Advertisement Spaces

In some embodiments, an exemplary system may be configured to searchgaze data for physical spaces that are not valued and/or that are notlisted for sale in the advertisement marketplace. When such potentialadvertisement spaces are detected, an exemplary system may identify auser that is authorized to list the physical space for sale as anadvertisement space, and/or may determine a potential listing price forthe advertisement space. Further, the system may then notify theauthorized user that the physical space can be listed as advertisementspace in the advertisement marketplace.

For example, FIG. 6 is flow chart illustrating a method for locatingpotential advertisement spaces, according to an exemplary embodiment. Inparticular, method 600 involves the server system searching gaze datafor any occurrence of an advertisement space, as shown by block 602.Upon detecting one or more occurrences of a given advertisement space inthe gaze data, the server may determine whether or not the givenadvertisement space is an unlisted advertisement space, as shown byblock 604. If it is determined that the advertisement space is unlisted,then the system may determine a user-account that is associated with thegiven advertisement space, as shown by block 606. In addition, thesystem may determine an advertisement value for the advertisement spacethat is based on the detected occurrences of the advertisement space, asshown by block 608. The system may then send an indication of anad-space suggestion message to the user-account, which indicates alisting price for at least the advertisement space that is based on thedetermined advertisement value, as shown by block 610.

B. Request for Identification of Advertisement Spaces that can be Listed

In an exemplary advertisement marketplace, method 600 may be implementedto automatically identify potential advertisement spaces that arecurrently unlisted, and notify users that are authorized to list thesepotential advertisement spaces of this possibility. This feature may beautomatic, and thus may be performed without targeting potentialadvertisement spaces for any particular user. However, in someembodiments, features may be provided to allow a user to specificallyrequest a search for unlisted advertisement spaces that can by listed bythe user. This feature may help a user to provide advertisement spacesthat they may have otherwise been unaware of, and may be helpful inother scenarios as well.

For example, FIG. 7 is flow chart illustrating a method for providing asearch-request feature, according to an exemplary embodiment. Morespecifically, method 700 involves the server system receiving a searchrequest associated with a first user-account, as shown in block 702. Inresponse to the search request, the server system searches gaze data todetect any occurrences of any advertisement space associated with thefirst user-account, as shown by block 704. In response to detecting oneor more associated advertisement spaces in the gaze data, the server maysend the first user-account a search-result message that indicates theassociated advertisement spaces that were located in the search, asshown by block 706.

At block 706, the server may wait for a certain time period and/or waituntil a certain number of associated advertisement spaces are detected,before sending the search-result message. Accordingly, the search-resultmessage may indicate a number of potential advertisement spaces for theuser-account. Alternatively, the server may send a separatesearch-result message upon detection of each associated advertisementspace.

In a further aspect of an exemplary embodiment, the search and/or thesearch results may be limited to unlisted advertisement spaces.Accordingly, if unlisted advertisement spaces are detected at block 704,the server may provide the requesting user-account with an indication ofthe unlisted advertisement spaces at block 706.

In another aspect, the search-result message may also include a listingprice for some or all of the associated advertisement spaces. As such,method 700 may further involve the system determining an advertisementvalue for at least one associated advertisement space, usinggaze-data-based methods such as those described herein. The listingprice may then be determined based on the advertisement value, andincluded in the search-result message. Provided with the listing pricefor an associated advertisement space, the user may send a listingrequest for the advertisement space. When the server receives such alisting request, the server may create a listing using an exemplarymethod, such as method 100.

C. Advertisement-Interest Indication Functionality

In another aspect, an exemplary advertisement marketplace may includefeatures that allow a user (i.e., an “advertiser”) that is interested inan unlisted advertisement space to indicate their interest. For example,the advertisement marketplace may build a database of unlistedadvertisement space using techniques similar to those described inblocks 602 to 606 of Figure, or using other techniques. Theadvertisement marketplace may then provide an interface via whichadvertisers can browse and/or search the unlisted advertisement spaces.This interface may allow an advertiser to indicate their interest inpurchasing an unlisted advertisement space and/or to request that theuser who is authorized to list the advertisement space be notified ofthis interest, in hopes that the user will then chose to list theadvertisement space in the advertisement marketplace.

In other cases, an exemplary advertisement marketplace may allow anadvertiser to indicate a interest in purchasing advertisement rights toa physical space that the system has not yet identified as anadvertisement space. When the system receives such a request, the systemmay first need to determine which user is authorized to list theadvertisement space (if any), so that an indication of the advertiser'sinterest can be sent to the user.

FIG. 8 is flow chart illustrating a method that providesadvertiser-request functionality, according to an exemplary embodiment.In particular, method 800 involves the server system receiving anadvertisement-interest indication associated with a first user-account,where the advertisement-interest indication indicates an advertisementspace, as shown by block 802. The system then determines anadvertisement value for the advertisement space, which is based ondetected occurrences of the advertisement space in gaze data, as shownby block 804. The system then identifies a second user-account that isassociated with the advertisement space, as shown by block 806. Thesystem then sends an advertisement-interest notification, whichindicates a listing price for the advertisement space that is based onthe determined advertisement value, to the second user-account, as shownby block 808.

In an exemplary embodiment, the associated user-account identified atblock 806 is a user-account of the user or one of multiple users thatare authorized to list the advertisement space (e.g., the owner of theadvertisement space or a representative of the owner). Further, in someimplementations, multiple user-accounts may be identified at block 806(e.g., both the user-account of the owner and a user-accounts for arepresentative of the owner).

VIII. Detecting Advertisement Spaces in Gaze Data

As noted above, various embodiments involve analysis of gaze data todetect and/or identify when advertisement spaces occur in gaze data.Referring back to FIG. 2, in order to detect ad-space occurrences, anexemplary server system 200 may employ various types of video and/orimage-processing techniques. For instance, advertisement server system204 may implement various well known and yet-to-be-developed techniquesfor object recognition in video and/or still images in the process ofrecognizing advertising spaces.

In some cases, an advertisement space may be identified in gaze data byway of the advertisement that is displayed in the advertisement space.For example, ad-space database 210 may include data related to whichspecific advertisements are being displayed in which advertisementspaces (and may further indicate when there is no advertisement beingdisplayed in a given advertisement space). As such, ad-valuation server212 may search for advertisements that are currently being displayed ingaze data. To do so, the ad-valuation server may user various visualsearch techniques that are now known or yet to be developed in order toidentify an advertisement in gaze data.

In other cases, an advertisement space may itself be identified, withoutnecessarily relying on the particular advertisement that is beingdisplayed in the advertisement space. (Note that this functionality maybe particularly useful in cases where an advertisement space is empty.)In such an embodiment, detecting that an advertisement space occurs ingaze data may involve recognizing when the gaze data includes an objector a certain combination of objects that are associated with aparticular advertisement space. For example, to recognize advertisementspace on the bumper of a particular car, gaze data may be analyzed foran object shaped and/or having coloration that is characteristic of acar bumper. Further, the gaze data may be analyzed for an object havingsuch a shape and/or coloration in conjunction with a license platehaving a certain license plate number. In such an embodiment, the serversystem may consider an occurrence of a bumper in combination with thelicense plate number for the specific car to be an occurrence of theadvertisement space on the car's bumper. Many other examples are alsopossible.

In some cases, searching gaze data from a large number of wearablecomputing devices for a large number advertisement spaces may be dataintensive. Accordingly, an exemplary server and or wearable computingdevices may implement pre-processing techniques to tag and ID certaintypes of objects or certain types of information in gaze data, which mayhelp to speed up the process of detecting advertisement spaces. In someinstances, wearable computing devices and/or the server may also storegaze data for processing when, e.g., a wearable computing device isoffline, or when the amount of real-time data being collected isgenerally less. For example, a server may use certain processingresources to receive incoming gaze data during the day, when more gazedata may be received, and then re-assign these processing resources toanalyze stored gaze data for advertisement spaces at night, when lessnew gaze data may be received.

In some embodiments, a server system may utilize location data to detectan occurrence of an advertisement space in gaze data. For example, aserver system may determine or be provided with the geographic locationof a particular advertisement space (e.g., the GPS coordinates of theadvertisement space). Then, when the advertisement space is detected ingaze data from a particular wearable computing device, the server maydetermine the location of the wearable computing device. If thiswearable computing device is located such that the advertisement spacecould be visible to the wearer of the wearable computing device (e.g.,within a predetermined distance from the location of the advertisementspace), then the server system may consider this an occurrence of theadvertisement space. However, if the wearable computing device thatprovided the gaze data is located such that the advertisement spacecould not be viewed by the wearer (e.g., not within a predetermineddistance from the location of the advertisement space), then the serversystem may not consider this an occurrence of the advertisement space.

As another example, a server system may use the geographic location of aparticular advertisement space to limit the gaze data that is monitoredfor the advertisement space. For instance, the server may determine thelocations of wearable computing devices from which gaze data isreceived. As such, the server may only monitor gaze data that isreceived from wearable computing devices that are located within apredetermined distance from the advertisement space. Other methods thatutilize the location of an advertisement space when detectingoccurrences of the advertisement space in gaze data are also possible.

In some embodiments, radio frequency identification (RFID) may be usedto help detect occurrences of an advertisement space in gaze data. Inparticular, an advertisement space may be associated with a certain RFIDtag, and wearable computing devices may be configured with RFID readers.As such, when a wearable computing device detects an RFID tag from anadvertisement space, the wearable computing device may relay this to theserver system. For instance, when the wearable computing device detectsan RFID that is associated with an advertisement space, it may insertmetadata into the gaze data which indicates the RFID tag and the time atwhich the RFID tag was detected. Alternatively, the wearable computingdevice may send a separate message indicating that the RFID tag wasdetected at a particular time. In either case, the server system canthen search for the associated advertisement space in gaze data that isreceived from the wearable computing device at or near the time when theRFID tag is detected. This may help the server system to moreefficiently detect occurrences of advertisement spaces, as the timingwith which the RFID tags are detected may indicate, for example, timesin corresponding point-of-view video where the advertisement space islikely to occur. Further, various types of RFID may be utilized, such asnear-field communications (NFC) and/or other types of RFID, dependingupon the implementation.

In some embodiments, barcodes may be used to help detect occurrences ofan advertisement space in gaze data. For instance, a barcode thatidentifies an advertisement space may be displayed within or near to anadvertisement space. The server system may then search for barcodeswithin gaze data. When a barcode associated with a particularadvertisement space is detected, the server may consider this to be anoccurrence of the advertisement space, or may treat this as a factorthat, along with other factors, can indicate that there is an occurrenceof the advertisement space in the gaze data. Various types of barcodes,such as high capacity color barcodes (HCCBs) and/or quick response (QR)codes may be utilized in such an embodiment. Other types of barcodes arepossible as well.

In a further aspect, machine-readable codes may also be associated witha particular ad that is displayed in an ad space. For example, a certainadvertisement may be associated with a certain QR code. As such, theadvertisement may be detected when the QR code is detected in gaze data.

Further, in some embodiments, machine-readable codes may be associatedwith a certain combination of a particular advertisement and aparticular user-account. As such, each copy of the same advertisementmay have a different QR code, which uniquely identifies the user-accountthat is authorized to sell the advertisement space. As a result,detecting a QR code in gaze data may enable an exemplary server systemto positively identify not only the advertisement that is displayed inthe advertisement space, but also which copy of the advertisement hasbeen detected. This may be useful in a scenario where the advertisementspace itself is difficult to detect, and in other scenarios as well.

It should be understood that the above techniques for detectingoccurrences of advertisement spaces are not intended to be limiting.Other techniques are also possible.

IX. Determining the Value of an Advertisement Space

As noted, in some embodiments, an exemplary system may be configured touse gaze data to determine advertisement values for advertisementspaces. Further, an exemplary system may be configured to determine anadvertisement value for many types of physical spaces; many of which maynot have been valued using traditional advertisement valuationtechniques.

FIG. 9A is a flow chart illustrating a method according to an exemplaryembodiment. This method may be implemented by a computing device, and inparticular, by a server system, in order to value an advertisement spacebased on point-of-view gaze data received from a number of wearablecomputing devices (which may be referred to interchangeably as wearablecomputing devices). Note that wearable computing devices may also bereferred to as wearable computers herein. Further, a server system thatimplements an exemplary method may be referred to as an ad-valuationsystem, as an ad-valuation server, or simply as a server.

As shown by block 902, method 900 involves a server system receivinggaze data from a number of wearable computing devices. The server systemanalyzes the gaze data from the wearable computing devices to detectoccurrences of an advertisement space in the gaze data, as shown byblock 904. The server system then generates wearer-view data for theadvertisement space, which is based on detected occurrences of theadvertisement space in the gaze data, as shown by block 906. Thewearer-view data can then be used as a basis for determining anadvertisement value for the advertisement space, as shown by block 908.Once the advertisement value is determined, the server system may causea computing system to make the advertisement space available forpurchase at the determined advertisement value, as shown by block 910.

In an exemplary method 900, the gaze data is received from a number ofwearable computing devices. Further, the gaze data from each wearablecomputing device is generally indicative of a respective wearer-viewassociated with the given wearable computing device. For example, thegaze data from each wearable computing device may take the form ofpoint-of-view video that is captured at the wearable computing device.As such, the gaze data that is analyzed by the server system may includea number of point-of-view videos (e.g., a respective point-of-view videofrom each of the wearable computing devices).

The gaze data from some or all of the wearable computing devices thatprovide gaze data may additionally or alternatively take forms otherthan point-of-view video. For example, the gaze data from some or all ofthe wearable computing devices may take the form of respectivepoint-of-view images captured by a forward- or outward-facing camera onthe respective wearable computing device. As a specific example, a givenwearable computing device may periodically take a picture, and then sendthe picture to the server system for use in generating wearer view data.To do so, the wearable computing device may analyze point-of-view videofor one or more advertisement spaces, and generate a screen capture ofthe video when and advertisement space detected. The wearable computingdevice may then send the screen capture to the server system. Otherexamples are also possible.

Since the gaze data from a given wearable computing device is generallyindicative of the wearer-view of the wearable computing device's wearer,the gaze data is generally indicative of what the wearer of the deviceis actually looking at. Further, since the wearer-view data is based onthe gaze data, the wearer-view data is indicative of actual views of theadvertisement space by wearers. For instance, the wearer-view data mayprovide an indication of how many people are looking at a particularadvertisement space, which people are actually looking at a particularadvertisement space, when people are looking at a particularadvertisement space, and/or how long people are actually looking at aparticular advertisement space, among other information. As such, thewearer-view data may help to more accurately determine what anadvertising space is worth.

As noted above, when occurrences of an advertisement space are detectedin gaze data, an exemplary method 900 may involve generating wearer-viewdata that is based on the detected occurrences. As such, an exemplaryserver system 204 may be configured to carry out an exemplary method 900or portions thereof for many different advertisement spaces. Generally,the accuracy of the ad-space valuation will typically increase as thenumber of wearable computing devices providing gaze data increases.However, the gaze data may be collected from any number of wearablecomputing devices without departing from the scope of the invention.

To facilitate determining an advertisement value for a givenadvertisement space, the wearer-view data may provide various types ofinformation. For example, the wearer-view data for a given advertisementspace may include, for each detected occurrence of the givenadvertisement space: (a) data indicating the particular wearablecomputing device that provided the gaze data in which the advertisementspace occurred, (b) data indicating a user-profile associated with theparticular wearable computing device, (c) data indicating a time of thedetected occurrence, (d) a duration of the detected occurrence, and/or(e) other information.

Generally, the function of generating wearer-view data for theadvertisement space, as shown in block 906 of method 900, may varydepending upon the information to be included in the wearer-view data.In an exemplary embodiment, detecting an occurrence of an advertisingspace in the gaze data may serve as a trigger for the server system togenerate wearer-view data recording the fact that the occurrence wasdetected. Further, to generate the wearer-view data for a givenoccurrence, the server system may extract information from the gaze datain which the occurrence was detected. The extracted information (orinformation derived from the extracted information) may be included inthe wearer-view data generated for the detected occurrence.

A. Per-Occurrence Data for an Advertisement Space

In some embodiments, the server system 204 may update the wearer-viewdatabase 308 upon each detected occurrence of an advertisement space.For example, the server system may generate a record in the wearer-viewdatabase for each detected occurrence of an advertisement space. In suchan embodiment, the record for a given occurrence of an advertisementspace may include: (a) an indication of the particular wearablecomputing device that provided the gaze data in which the advertisementspace occurred, (b) an indication of a user-profile associated with theparticular wearable computing device, (c) a time of the occurrence,and/or (d) a duration of the occurrence.

The wearer-view data for a given occurrence of an advertisement spacemay indicate the corresponding wearable computing device that providedthe gaze data in which the advertisement space occurred. In such anembodiment, the server system may determine the corresponding wearablecomputing device in various ways. For instance, consider an embodimentwhere the server system receives point-of-view (POV) video stream from anumber of wearable computing devices. In such an embodiment, the serversystem may establish a communication session to receive the video streamfrom a given one of the wearable computing devices, and as part ofestablishing and/or participating in the session, may receive anidentifier of the wearable computing device. (Note that variousprotocols, which are well known in the art, may be used to receive a POVvideo stream and/or to receive other forms of gaze data.) Additionallyor alternatively, metadata in the gaze data itself may include anidentifier of the wearable computing device that is providing the gazedata. Other techniques for determining which wearable computing devicecorresponds to a particular occurrence of an advertisement space arealso possible.

As further noted above, the wearer-view data for a given occurrence ofan advertisement space may indicate an associated user-profile, which isassociated with the wearable computing device that provided the gazedata having the particular occurrence. The server system may determinethe associated user-profile in various ways. For example, the server maydetermine the identifier for the corresponding wearable computing devicein a manner such as described above or otherwise. The server may thenlook up a user-profile of a user that is registered to use or isotherwise associated with the corresponding wearable computing device(e.g., by querying a user database that indicates which users areassociated with which wearable computing devices). Alternatively, auser-identifier may be provided in the course of receiving the gaze data(e.g., in a communication session or in metadata). In such anembodiment, the server system may use the user-identifier to access auser-profile for the user. As another alternative, the user-profileitself may be received directly from the device (e.g., during thecommunication session in which the gaze data is received, as metadataincluded in the gaze data, or in a separate message that is associatedwith the gaze data). Other techniques for determining a correspondinguser-profile for a particular occurrence of an advertisement space arealso possible.

In a further aspect, when the wearer-view data for a given occurrenceindicates the associated user-profile, the wearer-view data may simplyinclude an identifier of the associated user-profile. In such anembodiment, the data from such user-profiles may be stored in one ormore separate user-profile databases. In this case, the server may usethe identifiers of the associated user-profiles to retrieve the datafrom the actual user-profiles. Alternatively, some or all of the datafrom the associated user-profile may be included in the wearer-view datafor the advertisement space (e.g., in wearer-view database 308).

In a further aspect, the server system may include a time stamp in thewearer-view data that is generated for a given occurrence. The timestampmay indicate the time at which the occurrence of the advertisement spacewas detected. Additionally or alternatively, the timestamp may indicatea time that is derived from time data included in the gaze data. Forexample, point-of-view video from a given wearable computing device mayinclude time data indicating when the video was recorded by the wearablecomputing device. As such, the server system may use this time data togenerate a timestamp for an occurrence that is detected in suchpoint-of-view video. For instance, the server system may determine aframe or frames of the video that include the advertisement space, anduse a time stamp or time stamps of the frame or frames to generate thetimestamp for the detected occurrence. Other techniques for generating atimestamp for a particular occurrence of an advertisement space are alsopossible.

In another aspect, the wearer-view data for a given occurrence of anadvertisement space may indicate the duration of the given occurrence.Accordingly, the server system may be configured to determine theduration of a given occurrence of an advertisement space. For instance,in the above example where POV video includes time data, the serversystem may use timestamps on frames of the video to determine theduration of time the first frame of the video that includes theadvertisement space and the last subsequent and consecutive frame thatincludes the advertisement space. Alternatively, the server system mayimplement its own timer to determine the duration of a given occurrenceof an advertisement space. Other techniques for determining the durationof a particular occurrence of an advertisement space are also possible.

In a further aspect, when generating wearer-view data for a givenoccurrence, the server may consider whether the wearable computingdevice that corresponds to a given occurrence was being worn during theoccurrence. In particular, if the corresponding wearable computingdevice is not being worn at the time of the detected occurrence, theserver may adjust or change the wearer-view data that is generated inresponse to detecting the occurrence. For example, when the wearablecomputing device is not being worn, the server may interpret this tomean that the gaze data from the wearable computing device is unlikelyto represent what the wearer is actually viewing. Accordingly, theserver may include an indication that the wearable computing device wasnot being worn in the wearer-view data that is created for such anoccurrence. Further, server may adjust the wearer-view data so as todecrease the weight of such an occurrence when determining theadvertisement value for the advertisement space, or may ignore theoccurrence entirely (e.g., by refraining from generating any wearer-viewdata for the occurrence).

B. Summary Data for an Advertisement Space

In some embodiments, the wearer-view data for a given advertisementspace may include summary data for the advertisement space such as: (a)a list of which wearable computing devices viewed the advertisementspace (e.g., which wearable computing devices provided gaze data inwhich one or more occurrences were detected), (b) a list of theuser-accounts or the user-profiles that are associated with the wearablecomputing devices that have viewed the advertisement space, (c) a totalview count indicating the total number of detected occurrences of theadvertisement space, (d) a total view duration of the advertisementspace, (e) an average view duration for occurrences of the advertisementspace, and/or (f) a view rate that indicates how frequently theadvertisement space occurs in the gaze data (e.g., occurrences/hour,occurrences/month, etc.). The wearer-view data for a given advertisementspace may additionally or alternatively include other types of summarydata for the advertisement space.

In order to keep the above and other such summary data substantiallycurrent, the server system may update the wearer-view data for anadvertisement space each time the advertisement space is detected ingaze data. For example, when the server system detects an advertisementspace in gaze data from a given wearable computing device, the serversystem may update the wearer-view data by: (a) adding the given wearablecomputing device to a list of wearable computing devices that haveviewed the advertisement space (if the wearable computing device is noton the list already), (b) adding the user-account or the user-profilethat is associated with the given wearable computing device to a list ofuser-accounts or user-profiles that have viewed the advertisement space,(c) incrementing the total view count for the advertisement space, (d)determining the duration of the occurrence and adding the determinedduration to a total view duration for the advertisement space, and/or(e) determining the duration of the occurrence and adding the determinedduration and recalculating the average view duration to account for thedetermined duration. Other examples are possible as well.

In some embodiments, the wearer-view data for each advertisement spacemay include only summary data such as that described above, and thus maynot include per-occurrence data for each detected occurrence of anadvertisement space. However, it is also possible that the wearer-viewdata for a given advertisement space may include only per-occurrencedata, or may include both per-occurrence data and summary data for theadvertisement space.

C. Focus Data for an Occurrence

In some embodiments, the wearer-view data for a given advertisementspace may include focus data, which is generally indicative of theamount of attention paid to an advertisement space by viewers of theadvertisement space. The focus data may help to provide a more accuratevaluation for the advertisement space by helping take into account thefact that not all views are necessarily equal, since the amount ofattention paid to the advertisement space may vary between views. Insuch an embodiment, the server system may determine a focus value for adetected occurrence (as described above) when it generates wearer-viewdata for the occurrence, or may determine a focus value at a later time.

D. Use of Summary Data for Advertisement Valuation

As noted above, an exemplary method 900 may involve using thewearer-view data for an advertisement space to determine anadvertisement value for the advertisement space. Various types ofwearer-view data may be utilized when determining an advertisementvalue. For instance, various types of the summary data described aboveand/or various types of the per-occurrence data described above may beused to determine the advertisement value for a given advertisementspace. An exemplary valuation method may also incorporate other types ofdata in addition to wearer-view data. Further, the manner in which agiven type of wearer-view data is used to determine an advertisementvalue may vary depending upon the implementation.

In some embodiments, the advertisement value for a given advertisementspace may be based on summary data for the advertisement space. Forexample, the advertisement value may be based at least in part on thetotal view count for an advertisement space (e.g., the total number ofoccurrences that are detected in the gaze data). In such an embodiment,the total number of occurrences may be tracked over all time.Alternatively, the total number of occurrences may be tracked over apredetermined period of time (e.g., a year, a month, a week, or acustom-defined time period). In an exemplary embodiment thatincorporates total view count, the determined advertisement value willtypically increase as the total number of occurrences increases.Further, the manner in which the total view count is used to determineadvertisement value may vary, depending upon the implementation.

As another example, the advertisement value for a given advertisementspace may be based at least in part on a view rate for the advertisementspace (e.g., the rate at which occurrences of the advertisement spaceare detected in the gaze data). For instance, the wearer-view data mayindicate a number of views per month, per week, per day, per hour, etc.In such an embodiment, the rate may be based on detected occurrencesover all time. Alternatively, the rate may be based on occurrencesduring a predetermined period of time (e.g., during a year, a month, aweek, or a custom-defined time period). In an exemplary embodiment thatincorporates view rate, the determined advertisement value willtypically increase as the view rate increases. Further, the manner inwhich the view rate is used to determine advertisement value may vary,depending upon the implementation.

In the above examples, the advertisement value is determined based onsummary data that generally does not differentiate one detectedoccurrence from another. However, some embodiments may apply furtherintelligence to account for the fact that some views of an advertisementspace may be more valuable to an advertiser than others.

For example, the advertisement value for a given advertisement space maybe based at least in part on a total view duration and/or an averageview duration for the advertisement space. In such an embodiment, thetotal view duration and/or the average view duration may be calculatedfrom all detected occurrences of the advertisement space or from arepresentative sample of occurrences. In either case, the total viewduration and/or the average view duration may be calculated over alltime, or may be calculated over a predetermined period of time (e.g., ayear, a month, a week, or a custom-defined time period). In an exemplaryembodiment that incorporates total view duration and/or the average viewduration, the determined advertisement value will typically increase asthe total view duration and/or the average view duration increases.Accordingly, views that last longer will generally contribute more tothe advertisement value and/or be weighted more heavily when determiningthe advertisement value. It should be understood that the manner inwhich the total view duration and/or the average view duration is usedto determine advertisement value may vary, depending upon theimplementation.

As another example, the server may determine focus values for all or arepresentative sample of the detected occurrences of an advertisementspace. The server may then average the focus values for the detectedoccurrences to determine an average focus value for the advertisementspace. The server can then use the average focus value to determine theadvertisement value for the advertisement space.

In a further aspect, an exemplary embodiment may help account for thefact that views of an advertisement space by certain people may beconsidered more valuable than views of the same advertisement space byother people. More specifically, in an exemplary embodiment, wearers mayopt-in to a program or otherwise give permission for information fromtheir user-profile to be used to value advertisement spaces. Varioustypes of information from an associated user-profile may then be used todetermine how valuable a given occurrence of an advertisement space is.For instance, a user-profile for a wearer may include: (a) consumerinformation such as spending habits, locations of purchases, amounts ofpurchases, types or categories of purchases, timing of purchases, etc.,(b) demographic information such as age or age group, ethnicity,nationality, sex, location of residence, and/or location of workplace,(c) contact and/or social networking information such as a wearer'scontacts, and possibly data indicating a purchasing influence of thewearer with regard to their contacts (e.g., data indicating anycorrelation of the wearer's purchasing history to the wearers' friends'purchasing histories), and/or (d) other information such as income, jobor job type, other job details, hobbies, interests, and so on.

Therefore, since the occurrence of an advertisement space in gaze datafrom a given wearable computing device may be interpreted to mean thatthe wearer of the given wearable computing device has viewed or isviewing the advertisement space, information from user-profiles thatwearer-view data associates with a given advertisement space may provideinformation about the type or types of people that an advertisementspace reaches and/or of the characteristics of people that theadvertisement space reaches. As a result, this information may be usedto more accurately determine what types of people are viewing theadvertisement space, and value the advertisement space accordingly. Inparticular, an exemplary server may place greater weight on occurrenceof an advertisement space associated with certain people and/or certaintypes of people when determining the advertisement value for a givenadvertisement space.

For example, the server may determine a respective income level for theuser-profile associated with each occurrence. The server may thenaverage the determined income levels to calculate an average incomelevel for viewers of the advertisement space, and use the average incomelevel as input data to determine the advertisement value for theadvertisement space. Alternatively, the server may determine an incomerange of the determined income levels, and use the income range as aninput to the ad-value calculation for the advertisement space. Otherexamples are also possible.

It should be understood that the advertisement value for a givenadvertisement space may be based upon one type of summary data or acombination of various types of summary data. For example, in oneimplementation, the total number of views, the view rate, the averageview duration, and one or more characteristics of the associateduser-profiles, could all be used as inputs when calculatingadvertisement value. Many other examples are also possible.

E. Use of Per-Occurrence Ad-Value Contributions for AdvertisementValuation

In some embodiments, a server system may determine an advertisementvalue for an advertisement space by first determining an individualadvertisement-value contribution for each detected occurrence of theadvertisement space. The advertisement-value contribution for a givenoccurrence may be based on information from the user-profile associatedwith the occurrence and/or on other information related to theoccurrence. The collective knowledge provided by all the individualadvertisement-value contributions may then be used to determine theadvertisement value for the advertisement space and/or be used todetermine summary data for the advertisement space, which may in turn beused to determine the advertisement value.

FIG. 9B is a flow chart illustrating a method for determiningadvertisement value, according to an exemplary embodiment. Inparticular, FIG. 9B illustrates a method 950 in which the advertisementvalue for an advertisement space is based on individual ad-valuecontributions of occurrences of the advertisement space in gaze data.

More specifically, method 950 involves monitoring gaze data from anumber of wearable computing devices for occurrences of a particularadvertisement space, as shown by block 952. Each time an occurrence ofthe advertisement space is detected, as shown by block 954, the serversystem may further determine an advertising-value contribution of theoccurrence, as shown by block 956. The server system may then determineadvertising-value contributions for a number of occurrences by repeatingblocks 954 and 956 for a number of detected occurrences of theadvertisement space. The server system may then use theadvertising-value contributions for the detected occurrences of theadvertisement space as a basis for determining the advertisement valuefor the advertisement space, as shown by block 958.

In some embodiments, such as method 950 of FIG. 9B, the ad-valuecontribution for each occurrence of an advertisement space may bedetermined upon detecting the occurrence in the gaze data. However, itshould be understood that the ad-value contribution for some or alloccurrences of an advertisement space may be calculated at a later time,based on wearer-view data that is stored as the occurrences are detectedin the gaze data.

A server may use various techniques to determine the individual ad-valuecontribution for a given occurrence of an advertisement space in gazedata. Such techniques may utilize various different factors to determinethe ad-value contribution for a given occurrence. In some embodiments,the server may use a weighting value for an occurrence to determine thead-value contribution of the occurrence. In particular, the server maydetermine a weighting value that generally indicates the particularoccurrence's value relative to a “standard” occurrence of theadvertisement space. The weighting value for the particular occurrencemay then be applied to a base advertising-value contribution todetermine the advertising-value contribution for the particularoccurrence. In such an embodiment, the weighting value may be based onvarious factors or combinations of factors, such as the particularwearable computing device from which the gaze data including theparticular occurrence was received, the duration of the occurrence,characteristics of the person who viewed (e.g., as indicated by theuser-profile associated with the occurrence), the focus value of theoccurrence, and/or other factors.

As a specific example, the ad-value contribution for each occurrence ofthe advertisement space may be a dollar amount that is attributed to theoccurrence. As such, the server may determine a dollar amount for theadvertisement value by summing the ad-value contributions. As anotherexample, the ad-value contribution for each occurrence of theadvertisement space may be a price rate (e.g., dollars per month,dollars per view, etc.) that is attributed to a respective occurrence ofthe advertisement space. As such, the server may determine theadvertisement value by summing the ad-value contributions to get anoverall price rate. Other examples are also possible.

Once a server system has determined the individual ad-valuecontributions for a number of occurrences of the particularadvertisement space, the server may use various techniques to determinethe advertisement value for the advertisement space. For example, insome embodiments, the server may determine an average advertising-valuecontribution by averaging the advertising-value contributions of some orall of the detected occurrences. The server may then use the averageadvertising-value contribution as a basis for determining theadvertisement value for the advertisement space. As a specific example,the server may determine an ad-value contribution for each occurrence inthe same manner as the overall price or rate for the advertisementspace, but using the assumption that all occurrences of theadvertisement space are identical to the occurrence. The server may thendetermine a dollar amount or price rate for the advertisement space byaveraging the ad-value contributions determined in this manner. Otherexamples are also possible.

It should be understood that techniques described herein for determiningan advertisement value based on the ad-value contributions are notintended to be limiting. Other techniques for determining anadvertisement value based on the ad-value contributions of individualoccurrences are also possible, without departing from the scope of theinvention.

F. Valuation of an Advertisement Space on a Per-Advertisement Basis

Some embodiments may involve determining a value an advertisement spacethat is specific to a particular type of advertisement. For example, anadvertisement server may determine a value for an advertisement spacewhen the advertisement space is used to display an advertisement for aparticular type of product (e.g., for clothing or for a movie).

Further, in some embodiments, an exemplary method may be implemented forad-specific valuation of an advertisement space based on the extent towhich the advertisement space reaches the target market of theadvertisement. For instance, wearer-view data may be used to determinewho is viewing an advertisement space. The advertisement space valuationmay then be based on the correlation between those who view theadvertisement space and the target market of the specific advertisement.

In such an embodiment, an exemplary method may utilize wearer-view dataindicating user-profiles associated with occurrences of an advertisementspace in the gaze data. As such, the server may analyze the associateduser-profiles to determine one or more characteristics of those who haveviewed the advertisement space. More specifically, an exemplary methodmay involve determining a group of user-profiles associated with theadvertisement space (e.g., user-profiles that are associated withwearable computing devices that captured the advertisement space intheir respective gaze data). Then, based on characteristics of theassociated user-profiles, the server may determine one or more viewercharacteristics of the group. The viewer characteristics of the groupmay be interpreted as indicative of a “standard” viewer of theadvertisement space. As such, the viewer characteristics of the groupmay incorporate when determining the advertisement value for a specifictype advertisement.

For example, some embodiments may involve determining both: (a) theviewer characteristics of the group of associated user-profiles and (b)one or more target-viewer characteristics for the particularadvertisement. The server may then compare the viewer characteristics ofthe group to the target-viewer characteristics and, based on thecomparison, determine the advertisement value for the particularadvertisement in the advertisement space.

In some embodiments, the advertisement value for the particularadvertisement may be further based on the location of the advertisementspace. In particular, there may be a relationship between thecharacteristics of a particular advertisement and the location ofadvertisement space, and an exemplary method may help to account forsuch a relationship. In such cases, a weighting factor may be applied toincrease or decrease the advertisement value depending upon therelationship between the location of the advertisement space and thecharacteristics of the advertisement.

For example, consider an advertisement for a clothing product and anadvertisement space that is located near to a shopping area and/or nearto a store where the clothing product can be purchased. Thisadvertisement space may generally be considered more valuable when usedto display the advertisement for the clothing product than when used todisplay an advertisement for a type of product that cannot be purchasednearby. Accordingly, a weighting factor may be applied to increase theadvertisement value for the clothing product in the advertisement space.Similarly, the weighting factor may function to decrease theadvertisement value for a product that cannot be purchased nearby.

As another example, consider an advertisement for a movie and anadvertisement space that is located near to a movie theater that isshowing the movie. This advertisement space may generally be consideredmore valuable when used to display the advertisement for the movie thanwhen used to display an advertisement for a movie that is not in anynearby theaters. Accordingly, a weighting factor may be applied toincrease the advertisement value of the advertisement space for a moviethat is showing in the nearby theater. Similarly, the weighting factormay decrease the advertisement value for the movie that is not in anynearby theaters. Other examples are also possible.

In a further aspect, some implementations of methods 900 and 950 mayutilize the type of advertisement as the characteristic of theadvertisement upon which the advertisement value is based. In such anembodiment, all advertisements of the same type may be evaluated in thesame way. As such, the advertisement value in such an embodiment may ineffect be determined for the type of advertisement in the advertisementspace (rather than specifically for an individual advertisement).Alternatively, the type of advertisement may be one of a number offactors, such that an advertisement space may be valued differently fordifferent advertisements that are classified as being the same type ofadvertisement.

In yet another aspect, the advertisement value may vary for a particularadvertisement, if it is determined that the advertisement is more orless likely to interest wearers who view it. In particular, someembodiments may increase the advertisement value for an advertisement ina given advertisement space (and/or the amount that an advertiser isultimately charged, if this differs from the advertisement value), whenthe advertisement that is more likely to interest the people whotypically view the particular advertisement space. However, in otherembodiments, the opposite approach is also possible. In particular, anexemplary system may actually decrease the advertisement value for anadvertisement in a given advertisement space (and/or the amount that anadvertiser is ultimately charged, if this differs from the advertisementvalue) when the advertisement that is more likely to interest the peoplewho typically view the particular advertisement space.

While this may seem counter-intuitive in one sense, this strategy ofcharging less for more valuable advertisement selection may providelong-term gains. In particular, by displaying advertisements that arelikely to interest users, the advertising format as a whole gainscredibility with the viewing public, which may result in more peopleviewing the advertisement space in the long-term. Put another way, ifpeople are disinterested in what they see in an advertisement space,they may choose not to view and/or ignore what is displayed in theadvertisement space in the future. Therefore, by reducing the amountcharged for advertising that interests users, advertisers areincentivized to provide advertising that is interesting. Providing suchincentivizes may in turn increase the chances for long-term success inthe advertising space and similar types of advertising spaces, thuscreating more long term value for the seller and/or a third-party thatis brokering advertisement sales.

FIG. 10 is a flow chart illustrating a method for using multiple factorsto determine the ad-value contribution of a given ad-space occurrence ingaze data, according to an exemplary embodiment. In method 1000 of FIG.10, a pre-determined base contribution for an occurrence of theadvertisement space is weighted according to multiple factors in orderto determine an ad-value contribution for each occurrence of anadvertisement space in gaze data for a given user-account. Theadvertisement value for a given advertisement space may then bedetermined from the collective knowledge provided by the ad-valuecontributions of the all or a representative subset of its occurrencesin gaze data. While method 1000 is described by way of example as beingimplemented by a server system, this by another device or system, or bya combination of the server system and/or other devices and systems.

Method 1000 involves the server system determining a weighting value(weighting_value_(i)) to be applied for an occurrence of anadvertisement space (O_(i)) in gaze data. The weighting_value is basedon m different factors (f_1_(i) to f_m_(i)). In particular, the serversystem may determine a value for a first factor (f_1_(i)) with respectto a given occurrence of an advertisement space in, as shown by block1002. The server system may then determine a benchmark value for thefirst factor (bm_f_1_(i)), as shown by block 1004. This benchmark may bethe average or a mean value for the given factor over a sample set ofdifferent occurrences, or may be a predefined standard value for thegiven factor. The benchmark value may be determined in other ways aswell.

In any case, the server system may determine a relationship between thedetermined value of the first factor for the given occurrence and thebenchmark value with respect to the first factor (e.g.,f_1_(i)/bm_f_1_(i)), as shown by block 1006. If there are additionalfactors to consider (e.g., if m is greater than one), as indicated byblock 1008, then the server may repeat blocks 1002 to 1006 for theadditional factors, until the relationship between the givenuser-account and relationship between the value for the given occurrenceand the average value has been determined for each factor. Once all thefactors have been evaluated, the server system may use the determinedrelationships as a basis for determining a weighting value for theoccurrence, as shown by block 1010.

Thus, for a given occurrence O_(i), and values for a set of n factorsf_1 to f_n, method 1000 may be implemented to determine aweighting_value_(i) as a function of the respective relationshipsbetween the values of factors for the respective occurrence f_1_(i) tof_m_(i) and the respective benchmark value bm_f_1_(i) to bm_f_m_(i). Forexample, weighting_value_(i) may be calculated as:weighting_value_(i) =F[(f_1_(i) /bm_f_1_(i)),(f_2_(i) /bm_f_2_(i)), . .. (f_m _(i) /bm_f_m _(i))]Note that the particular function of the relationships used may varyfrom implementation to implementation, depending upon the design goals.

Once the server has determined the weighting_value_(i) for a givenoccurrence O_(i) of an advertisement space, the server may use a basecontribution for an occurrence of the advertisement space detected inoccurrence O_(i) to calculate the ad-value contribution for theoccurrence as:ad_value_contribution_(i)=base_contribution_(i)*weighting_value_(i)

Further, the server system may repeat the above process to determine anad-value contribution for each of n occurrences of the advertisementspace in the gaze data. As such, the advertisement value for theadvertisement space may be determined as a function ofad_value_contribution_(i) for i equal 1 to n. For example, theadvertisement value for the advertisement space may be calculated bysumming ad_value_contribution_(i) to ad_value_contribution_(n). Otherexamples are also possible.

It should be understood that many other types of information provided byand/or related to a given user-account may be considered, alone or incombination, when determining the ad-value contribution of anadvertisement space in gaze data for the given user-account. Further,information provided by and/or related to a given user-account may beconsidered in combination with other factors, such as duration of anoccurrence and/or a focus value associated with the occurrence, whendetermining the ad-value contribution for an occurrence.

G. Adjusting the Advertisement Value Based on Other Factors

In some embodiments, advertisement valuation may be based on other typesof data, in addition to wearer-view data. In such an embodiment, theadvertisement server may determine a base value for the advertisement,or a weighting to be applied to the advertisement value based on anintrinsic value of the advertisement space, which accounts for thecharacteristics of the advertisement space itself, and then adjust theintrinsic value according to the wearer-view data.

For example, in some embodiments, an exemplary method may use thegeographic location of the advertisement space as a further basis fordetermining the advertisement value for the advertisement space. Forexample, an advertisement that is located in a shopping area may have agreater intrinsic value than one that is located in an alley.Accordingly, an advertisement value that is determined based onwearer-view data may be adjusted based on the location of theadvertisement space. Other examples are also possible. Generally, thetype and/or the amount of adjustment that is applied due to the locationof an advertisement space may vary depending upon the particularimplementation.

Further, in some embodiments, the server may consider the type ofadvertisement space and/or the format in which advertisements can bedisplayed in the advertisement space when determining the advertisementvalue for the advertisement space. For example, an LCD billboard mightgenerally be considered more valuable than an equivalent printbillboard. As such, when an advertisement value is determined for abillboard based on wearer-view data, the determined advertisement valuemay be adjusted based on whether the billboard is an LCD or a printbillboard. Other examples are also possible. Generally, the type and/orthe amount of adjustment that is applied based on the type ofadvertisement space may vary depending upon the particularimplementation. Further, other adjustments, based on othercharacteristics of an advertisement space, are also possible.

In another aspect, an advertisement space may be blank (e.g., notdisplaying an advertisement) during some or all of the period in whichgaze data is being collected for purposes of determining theadvertisement value. The fact that an advertisement space is blank, asopposed to displaying an advertisement, may affect the gaze data for theadvertisement space because a blank space might attract less attentionfrom nearby people. Further, different advertisements may attractdifferent amounts of attention. Therefore, when an advertisement isdisplayed while gaze data is being collected, the particularadvertisement may itself affect the gaze data. As such, it is possiblethat wearer-view data for an advertisement space may be effected bywhether or not an advertisement space is blank, and if something isdisplayed in the advertisement space, what specifically is displayed.

Accordingly, an exemplary method may further involve determining apre-sale weighting factor for an advertisement space, which is based on:(a) whether the advertisement space is blank while gaze data is beingcollected and/or (b) the characteristics of what is displayed in theadvertisement space while gaze data is being collected. A server maythen use the pre-sale weighting factor for the advertisement space as afurther basis for determining the advertisement value for theadvertisement space.

As a specific example, an exemplary method may further the serverdetermining whether or not the advertisement space had an advertisementin place while receiving and analyzing the gaze data. Then, if theadvertisement space had an advertisement in place, the server may applya first adjustment to the wearer-view data before using the wearer-viewdata to determine the advertisement value (e.g., an adjustment orweighting factor that corresponds to the particular advertisement thatis displayed). On the other hand, if an advertisement was not displayedin the advertisement space, then the server may apply a secondadjustment to the wearer-view data (e.g., an adjustment that accountsfor the fact that no advertisement was displayed).

In such an embodiment, the server may determine whether or not theadvertisement space had an advertisement in place in various ways. Forexample, the server may query an advertisement space database todetermine whether the advertisement space is in use and if so, whatadvertisement is being displayed. Additionally or alternatively, theserver may analyze the gaze data itself (e.g., by analyzingpoint-of-view video in which the advertisement space is detected). Otherexamples are also possible.

In yet another aspect, some embodiments may implement gaze-datarequirements that require a certain amount of gaze data be analyzedbefore an advertisement space can be offered for sale in anad-marketplace system. For instance, an ad-marketplace system mayrequire that gaze data from a threshold number of devices have beenanalyzed before the determined advertisement value is deemed accurateenough to offer the advertisement space for sale via the marketplace.Additionally or alternatively, ad-marketplace system may require thatgaze data be monitored for a certain period of time (e.g., at least aweek) before the determined advertisement value is deemed accurateenough to offer the advertisement space for sale.

Further, in some embodiments, wearer-view data requirements may requirethat a certain amount of wearer-view data be generated before anadvertisement space can be offered for sale in an ad-marketplace system.For example, an ad-marketplace system may require that a certain numberof occurrences of an advertisement space be detected before thedetermined advertisement value is deemed accurate enough to offer theadvertisement space for sale via the marketplace (or in other words,require that the wearer-view data takes into account at least athreshold number of occurrences). Other examples are also possible.

X. Use of Supplemental Gaze Data from Non-Wearable Computing Devices

In some embodiments, an exemplary method may incorporate supplementalgaze data from one or more non-wearable computing devices. In such anembodiment, the supplemental gaze data may include media captured by thenon-wearable computing devices. For example, supplemental gaze data maybe received from mobile phones, tablet computers, network-enabled videoand/or still cameras, and/or other non-wearable computing devices.

Similar to the gaze data from wearable computing devices, thesupplemental gaze data is generally indicative of a respective user-viewassociated with a device that provides supplemental gaze data.Accordingly, an exemplary method may further involve receivingsupplemental gaze data from one or more non-wearable computing devicesthat are registered to a given user-account. A server may then detectadditional occurrences of advertisement spaces in the supplemental gazedata, and factor the additional occurrences in when determining theadvertisement value for a given advertisement space.

However, because supplemental gaze data is captured at non-wearabledevices, supplemental gaze data may less reliably represent what theuser actually sees, as compared to gaze data captured by a wearabledevice that is physically worn on the user's person. Accordingly, in anexemplary method, the server may weight supplemental occurrences thatare detected in the supplemental gaze data in order to account for theincreased probability that the supplemental gaze data does not representwhat the user actually sees. For example, the server may weight asupplemental occurrence by a significance factor corresponding to thelikelihood that the corresponding supplemental gaze data is indicativeof a respective user-view associated with the non-wearable computingdevice that provided the supplemental gaze data in which thesupplemental occurrence was detected.

In a further aspect, systems may be implemented to actively searchsupplemental gaze data that is pre-recorded, such as image librariesthat are accessible via a network. For example, a server or anassociated system may be configured to analyze images from one or moreonline image albums to determine supplemental user-view data for theadvertisement space. In such an embodiment, the supplemental user-viewdata is based on occurrences of the advertisement space in the pluralityof images.

For example, the system may search image albums on a photo-sharingwebsite, social-network website, or another network source, foroccurrences of the advertisement space in the images. When an occurrenceis found, the system may generate supplemental user-view data for theoccurrence. For instance, many such websites require that users open auser-account in order to create photo albums and/or share photos.Accordingly, the system may store data linking the occurrence of theadvertisement space to the user-account via which the image was shared.

In a further aspect, one image of an advertisement space may beindicative of a more valuable view of the advertisement space thananother image. As such, each image that includes the advertisement spacemay be evaluated for indications of how significant the occurrence is,so that the occurrence may be weighted accordingly when determining theadvertisement value.

For example, an exemplary method may involve analyzing one or moreimages from one or more image albums to detect any occurrences of theadvertisement space in the images. Then, for each image where anadvertisement space is detected, the system may determine an ad-valuecontribution and/or an advertising-value contribution for the givenimage (note that in some instances, the advertising-value contributionmay be used as the ad-value contribution). As a specific example,determining a prominence value corresponding to a prominence of theadvertisement space in the given image (e.g., a size and/or location ofthe advertisement space in the image), and then use the prominence valueas a basis for determining an ad-value contribution and/or anadvertising-value contribution for the given image. The system may thenuse any ad-value contributions from these images, such as any prominencevalues that are determined for any of the images, when determining theadvertisement value for a given advertisement space. Similarly, thesystem may use any advertising-value contributions from these images,such as any prominence values that are determined for any of the images,when determining the advertisement value for the advertisement space.

In a further aspect, data from GPS systems and other sensors, such asmagnetometers, accelerometers, and/or gyroscopes may providesupplemental gaze data. In some embodiments, GPS on a wearable computingdevice or another device (e.g., a mobile phone or tablet) may provide anindication of location, and a magnetometer on the same device mayprovide an indication of orientation, such that it may be inferred thata user of the device is in a certain location and is facing a certaindirection. Further, the location of an advertisement space may also bedetermined as described herein. Thus, if the user is inferred to befacing a location where and space is located, this may be considered aview of the advertisement space, and thus may be factored into thewearer-view data. Other examples of using GPS and/or sensor data toinfer supplemental gaze data are also possible.

XI. Exemplary Wearable Computing Systems

FIG. 11A illustrates a wearable computing system according to anexemplary embodiment. In FIG. 11A, the wearable computing system takesthe form of a head-mounted device (HMD) 1102 (which may also be referredto as a head-mounted display). It should be understood, however, thatexemplary systems and devices may take the form of or be implementedwithin or in association with other types of devices, without departingfrom the scope of the invention. As illustrated in FIG. 11A, thehead-mounted device 1102 comprises frame elements including lens-frames1104, 1106 and a center frame support 1108, lens elements 1110, 1112,and extending side-arms 1114, 1116. The center frame support 1108 andthe extending side-arms 1114, 1116 are configured to secure thehead-mounted device 1102 to a user's face via a user's nose and ears,respectively.

Each of the frame elements 1104, 1106, and 1108 and the extendingside-arms 1114, 1116 may be formed of a solid structure of plasticand/or metal, or may be formed of a hollow structure of similar materialso as to allow wiring and component interconnects to be internallyrouted through the head-mounted device 1102. Other materials may bepossible as well.

One or more of each of the lens elements 1110, 1112 may be formed of anymaterial that can suitably display a projected image or graphic. Each ofthe lens elements 1110, 1112 may also be sufficiently transparent toallow a user to see through the lens element. Combining these twofeatures of the lens elements may facilitate an augmented reality orheads-up display where the projected image or graphic is superimposedover a real-world view as perceived by the user through the lenselements.

The extending side-arms 1114, 1116 may each be projections that extendaway from the lens-frames 1104, 1106, respectively, and may bepositioned behind a user's ears to secure the head-mounted device 1102to the user. The extending side-arms 1114, 1116 may further secure thehead-mounted device 1102 to the user by extending around a rear portionof the user's head. Additionally or alternatively, for example, the HMD1102 may connect to or be affixed within a head-mounted helmetstructure. Other possibilities exist as well.

The HMD 1102 may also include an on-board computing system 1118, a videocamera 1120, a sensor 1122, and a finger-operable touch pad 1124. Theon-board computing system 1118 is shown to be positioned on theextending side-arm 1114 of the head-mounted device 1102; however, theon-board computing system 1118 may be provided on other parts of thehead-mounted device 1102 or may be positioned remote from thehead-mounted device 1102 (e.g., the on-board computing system 1118 couldbe wire- or wirelessly-connected to the head-mounted device 1102). Theon-board computing system 1118 may include a processor and memory, forexample. The on-board computing system 1118 may be configured to receiveand analyze data from the video camera 1120 and the finger-operabletouch pad 1124 (and possibly from other sensory devices, userinterfaces, or both) and generate images for output by the lens elements1110 and 1112.

The video camera 1120 is shown positioned on the extending side-arm 1114of the head-mounted device 1102; however, the video camera 1120 may beprovided on other parts of the head-mounted device 1102. The videocamera 1120 may be configured to capture images at various resolutionsor at different frame rates. Many video cameras with a smallform-factor, such as those used in cell phones or webcams, for example,may be incorporated into an example of the HMD 1102.

Further, although FIG. 11A illustrates one video camera 1120, more videocameras may be used, and each may be configured to capture the sameview, or to capture different views. For example, the video camera 1120may be forward- or outward-facing to capture at least a portion of thereal-world view perceived by the user. This forward facing imagecaptured by the video camera 1120 may then be used to generate anaugmented reality where computer generated images appear to interactwith the real-world view perceived by the user.

The sensor 1122 is shown on the extending side-arm 1116 of thehead-mounted device 1102; however, the sensor 1122 may be positioned onother parts of the head-mounted device 1102. The sensor 1122 may includeone or more of a gyroscope or an accelerometer, for example. Othersensing devices may be included within, or in addition to, the sensor1122 or other sensing functions may be performed by the sensor 1122.

The finger-operable touch pad 1124 is shown on the extending side-arm1114 of the head-mounted device 1102. However, the finger-operable touchpad 1124 may be positioned on other parts of the head-mounted device1102. Also, more than one finger-operable touch pad may be present onthe head-mounted device 1102. The finger-operable touch pad 1124 may beused by a user to input commands. The finger-operable touch pad 1124 maysense at least one of a position and a movement of a finger viacapacitive sensing, resistance sensing, or a surface acoustic waveprocess, among other possibilities. The finger-operable touch pad 1124may be capable of sensing finger movement in a direction parallel orplanar to the pad surface, in a direction normal to the pad surface, orboth, and may also be capable of sensing a level of pressure applied tothe pad surface. The finger-operable touch pad 1124 may be formed of oneor more translucent or transparent insulating layers and one or moretranslucent or transparent conducting layers. Edges of thefinger-operable touch pad 1124 may be formed to have a raised, indented,or roughened surface, so as to provide tactile feedback to a user whenthe user's finger reaches the edge, or other area, of thefinger-operable touch pad 1124. If more than one finger-operable touchpad is present, each finger-operable touch pad may be operatedindependently, and may provide a different function.

FIG. 11B illustrates an alternate view of the wearable computing deviceillustrated in FIG. 11A. As shown in FIG. 11B, the lens elements 1110,1112 may act as display elements. The head-mounted device 1102 mayinclude a first projector 1128 coupled to an inside surface of theextending side-arm 1116 and configured to project a display 1130 onto aninside surface of the lens element 1112. Additionally or alternatively,a second projector 1132 may be coupled to an inside surface of theextending side-arm 1114 and configured to project a display 1134 onto aninside surface of the lens element 1110.

The lens elements 1110, 1112 may act as a combiner in a light projectionsystem and may include a coating that reflects the light projected ontothem from the projectors 1128, 1132. In some embodiments, a reflectivecoating may not be used (e.g., when the projectors 1128, 1132 arescanning laser devices).

In alternative embodiments, other types of display elements may also beused. For example, the lens elements 1110, 1112 themselves may include:a transparent or semi-transparent matrix display, such as anelectroluminescent display or a liquid crystal display, one or morewaveguides for delivering an image to the user's eyes, or other opticalelements capable of delivering an in focus near-to-eye image to theuser. A corresponding display driver may be disposed within the frameelements 1104, 1106 for driving such a matrix display. Alternatively oradditionally, a laser or LED source and scanning system could be used todraw a raster display directly onto the retina of one or more of theuser's eyes. Other possibilities exist as well.

FIG. 12A illustrates another wearable computing system according to anexemplary embodiment, which takes the form of an HMD 1202. The HMD 1202may include frame elements and side-arms such as those described withrespect to FIGS. 11A and 11B. The HMD 1202 may additionally include anon-board computing system 1204 and a video camera 1206, such as thosedescribed with respect to FIGS. 11A and 11B. The video camera 1206 isshown mounted on a frame of the HMD 1202. However, the video camera 1206may be mounted at other positions as well.

As shown in FIG. 12A, the HMD 1202 may include a single display 1208which may be coupled to the device. The display 1208 may be formed onone of the lens elements of the HMD 1202, such as a lens elementdescribed with respect to FIGS. 11A and 11B, and may be configured tooverlay computer-generated graphics in the user's view of the physicalworld. The display 1208 is shown to be provided in a center of a lens ofthe HMD 1202, however, the display 1208 may be provided in otherpositions. The display 1208 is controllable via the computing system1204 that is coupled to the display 1208 via an optical waveguide 1210.

FIG. 12B illustrates another wearable computing system according to anexemplary embodiment, which takes the form of an HMD 1222. The HMD 1222may include side-arms 1223, a center frame support 1224, and a bridgeportion with nosepiece 1225. In the example shown in FIG. 12B, thecenter frame support 1224 connects the side-arms 1223. The HMD 1222 doesnot include lens-frames containing lens elements. The HMD 1222 mayadditionally include an on-board computing system 1226 and a videocamera 1228, such as those described with respect to FIGS. 11A and 11B.

The HMD 1222 may include a single lens element 1230 that may be coupledto one of the side-arms 1223 or the center frame support 1224. The lenselement 1230 may include a display such as the display described withreference to FIGS. 11A and 11B, and may be configured to overlaycomputer-generated graphics upon the user's view of the physical world.In one example, the single lens element 1230 may be coupled to the innerside (i.e., the side exposed to a portion of a user's head when worn bythe user) of the extending side-arm 1223. The single lens element 1230may be positioned in front of or proximate to a user's eye when the HMD1222 is worn by a user. For example, the single lens element 1230 may bepositioned below the center frame support 1224, as shown in FIG. 12B.

FIG. 13 illustrates a schematic drawing of a wearable computing deviceaccording to an exemplary embodiment. In system 1300, a device 1310communicates using a communication link 1320 (e.g., a wired or wirelessconnection) to a remote device 1330. The device 1310 may be any type ofdevice that can receive data and display information corresponding to orassociated with the data. For example, the device 1310 may be a heads-updisplay system, such as the head-mounted devices 1102, 1202, or 1222described with reference to FIGS. 11A, 11B, 12A, 12B, and 13.

Thus, the device 1310 may include a display system 1312 comprising aprocessor 1314 and a display 1316. The display 1310 may be, for example,an optical see-through display, an optical see-around display, or avideo see-through display. The processor 1314 may receive data from theremote device 1330, and configure the data for display on the display1316. The processor 1314 may be any type of processor, such as amicro-processor or a digital signal processor, for example.

The device 1310 may further include on-board data storage, such asmemory 1318 coupled to the processor 1314. The memory 1318 may storesoftware that can be accessed and executed by the processor 1314, forexample.

The remote device 1330 may be any type of computing device ortransmitter including a laptop computer, a mobile telephone, or tabletcomputing device, etc., that is configured to transmit data to thedevice 1310. The remote device 1330 and the device 1310 may containhardware to enable the communication link 1320, such as processors,transmitters, receivers, antennas, etc.

In FIG. 13, the communication link 1320 is illustrated as a wirelessconnection; however, wired connections may also be used. For example,the communication link 1320 may be a wired serial bus such as auniversal serial bus or a parallel bus. A wired connection may be aproprietary connection as well. The communication link 1320 may also bea wireless connection using, e.g., Bluetooth® radio technology,communication protocols described in IEEE 802.11 (including any IEEE802.11 revisions), Cellular technology (such as GSM, CDMA, UMTS, EV-DO,WiMAX, or LTE), or Zigbee® technology, among other possibilities. Theremote device 1330 may be accessible via the Internet and may include acomputing cluster associated with a particular web service (e.g.,social-networking, photo sharing, address book, etc.).

It should be understood that for situations in which the embodimentsdiscussed herein collect and/or use any personal information about usersor information that might relate to personal information of users, theusers may be provided with an opportunity to opt in/out of programs orfeatures that involve such personal information (e.g., information abouta user's preferences or a user's contributions to social contentproviders). In addition, certain data may be anonymized in one or moreways before it is stored or used, so that personally identifiableinformation is removed. For example, a user's identity may be anonymizedso that no personally identifiable information can be determined for theuser and so that any identified user preferences or user interactionsare generalized (for example, generalized based on user demographics)rather than associated with a particular user.

While various aspects and embodiments have been disclosed herein, otheraspects and embodiments will be apparent to those skilled in the art.The various aspects and embodiments disclosed herein are for purposes ofillustration and are not intended to be limiting, with the true scopeand spirit being indicated by the following claims.

The invention claimed is:
 1. A computer-implemented method comprising:receiving, by a computing system, a listing-suggestion requestassociated with a first account, wherein the listing-suggestion requestindicates an instruction to opt in to a service that providessuggestions of real-world surfaces usable for overlay ofaugmented-reality content; and responsive to the listing-suggestionrequest, the computing system: (a) detecting, by one or more processors,in image data received from one or computing devices, one or moreoccurrences of a real-world object; (b) determining, by one or moreprocessors, that the first surface of real-world object is associatedwith the first account; and (c) determining, by one or more processors,that the first account is not associated with rights to overlayaugmented-reality content to the first surface; and (d) responsive todetermining that the first account is not associated with rights tooverlay augmented-reality content to the first surface: (i) using, byone or more processors, the image data as a basis for determining avalue corresponding to overlay of augmented-reality content on the firstsurface of the real-world object; and (ii) sending, by one or moreprocessors, a listing-suggestion message to a computing devicecorresponding to the first account, wherein the listing-suggestionmessage indicates the determined value.
 2. The method of claim 1,wherein using the image data to determine the value corresponding tooverlay of augmented-reality content on the first surface of thereal-world object comprises: using the image data to generatewearer-view data for the real-world object; using the wearer-view datafor the real-world object as a basis for determining a valuecorresponding to overlay of augmented-reality content on the firstsurface of the real-world object; and causing the computing device tosend a listing-suggestion message to a computing device corresponding tothe first account, wherein the listing-suggestion message indicates thevalue corresponding to overlay of augmented-reality content on the firstsurface.
 3. The method of claim 1, wherein the first surface is anon-display surface of a laptop computer.
 4. The method of claim 1,wherein the value comprises a value corresponding to overlay ofaugmented-reality content on the first surface of the real-world object.5. The method of claim 1, wherein the first surface is located on anarticle of clothing.
 6. The method of claim 1, wherein the first surfaceis located on an automobile.
 7. The method of claim 1, furthercomprising: after the initial time of the listing, receiving subsequentimage data from a plurality of wearable computing devices, wherein thesubsequent image data is indicative of a respective wearer-viewassociated with each of the wearable computing devices; and analyzingthe subsequent image data to detect occurrences of the first surface inthe subsequent image data; updating the value based at least in part onoccurrences of the first surface in the subsequent image data; andsending an updated listing-suggestion message to the computing devicecorresponding to the first account, wherein the updatedlisting-suggestion message indicates the updated value.
 8. A system foridentifying real-world surfaces for overlay of augmented-realitycontent, the system comprising: at least one communication interfaceoperable to communicate with one or more client devices; anon-transitory computer-readable medium; and program instructions storedon the non-transitory computer-readable medium and executable by atleast one processor to: (i) receive a listing-suggestion requestassociated with a first account, wherein the listing-suggestion requestindicates an instruction to opt in to a service that providessuggestions of real-world surfaces usable for overlay ofaugmented-reality content, and (ii) subsequent to receipt of thelisting-suggestion request: (a) detect, with the at least one processor,in image data received from one or wearable devices, one or moreoccurrences of a first surface of a real-world object in the gaze data;(b) determine, with the at least one processor, that the first surfaceof real-world object is associated with the first account; and (c)determine, with the at least one processor, that the first account isnot associated with rights to overlay augmented-reality content to thefirst surface; and (d) responsive to determining that the first accountis not associated with rights to overlay augmented-reality content tothe first surface, use, with the at least one processor, the image datato generate wearer-view data as a basis for determining a valuecorresponding to overlay of augmented-reality content on the firstsurface of the real-world object, and send, with the at least oneprocessor, a listing-suggestion message to a computing devicecorresponding to the first account, wherein the listing-suggestionmessage indicates the determined value.
 9. A computer-implemented methodcomprising: receiving image data from a plurality of wearable computingdevices; receiving an indication of interest that identifies areal-world object, wherein the real-world object is associated with afirst account and the indication of interest is associated with a secondaccount; determining, by one or more processors, whether the firstaccount is associated with an optional function that identifiesreal-world surfaces usable for overlay of augmented-reality content;when the first account is determined to be associated with an optionalservice: (a) analyzing, by one or more processors, the image data fromthe plurality of wearable computing devices to detect one or moreoccurrences the real-world object in the image data; (b) determining, byone or more processors, a value corresponding to overlay ofaugmented-reality content on the real-world object; (c) using, by one ormore processors, the image data as a basis for determining a valuecorresponding to overlay of augmented-reality content on the real-worldobject, and (d) sending, by one or more processors, a listing-suggestionmessage to a computing device corresponding to the first account,wherein the listing-suggestion message indicates the determined value;and when the first account is not associated with an optional service,refraining from analyzing the image data for occurrences of the firstsurface.
 10. The method of claim 9, wherein using the image data todetermine the value corresponding to overlay of augmented-realitycontent on the real-world object comprises: using the image data togenerate wearer-view data for the real-world object; using thewearer-view data for the real-world object as a basis for determining avalue corresponding to overlay of augmented-reality content on thereal-world object; and causing the computing device to send alisting-suggestion message to a computing device corresponding to thefirst account, wherein the listing-suggestion message indicates thevalue corresponding to overlay of augmented-reality content on the firstsurface.
 11. The method of claim 9, wherein the real-world objectcomprises a laptop computer.
 12. The method of claim 9, wherein thevalue comprises a value corresponding to overlay of augmented-realitycontent on at least one surface of the real-world object.
 13. The methodof claim 9, wherein the real-world object is an article of clothing. 14.The method of claim 9, wherein the real-world object takes the form ofor is part of an automobile.
 15. The method of claim 14, furthercomprising: after the initial time of the listing, receiving subsequentimage data from a plurality of wearable computing devices; analyzing thesubsequent image data to detect occurrences of the real-world object inthe subsequent image data; updating the value based at least in part onoccurrences of the real-world object in the subsequent image data; andsending an updated listing-suggestion message to the computing devicecorresponding to the first account, wherein the updatedlisting-suggestion message indicates the updated value.